2012-08-25 59 views
0

我得到一个表单,我想通过javascript发送隐藏的输入,怎么做? F.ex:提交表单隐藏值提交

<input id="total" type="hidden" value="" name="total" /> 

当有人点击提交我想将它的价值

+1

使用'onsubmit'事件...否则,我在这里看到没有问题... – jeremy

+0

你能更具体吗?为什么设置一个值? – moopet

+0

我认为OP意味着输入标签的值 – Phil

回答

2

你是不是想瞬间改变隐藏的价值输入?当然,这样的事情可以通过onsubmit事件来实现。

var submit = document.getElementById("submit"); 
var hidden = document.getElementById("hidden"); 

var eventListener = function(el, type, listener) { 
    if(el.addEventListener) { 
     el.addEventListener(type, listener, false); 
    } else if(el.attatchEvent) { 
     el.attatchEvent("on"+type, listener); 
    } else { 
     el['on'+type] = listener; 
    } 
}; 

var onsubmit = function() { 
    var newVal = "value to set for hidden input"; 

    hidden.value = newVal; 
}; 

eventListener(submit, "submit", onsubmit); 

上述代码将侦听提交按钮上的提交事件,并在触发时会更改隐藏输入的值。要进一步了解任何答案,我们需要一个更具描述性的问题。否则,我真的不知道你想要什么。

+0

注意:IE的旧模型需要'.attachEvent()'来代替。 –

+0

@JaredFarrish我已经添加了代码。 – jeremy

0

您可以尝试以下操作:

document.getElementById("total").value = "value you want to set"; 
    document.formname.submit(); 
0

如果你想创建一个唯一的ID,以便你可以添加这个人到一个唯一的密钥分贝或你想创建某种类型的会话ID或类似的ID并将其存储在内存然后我建议使用PHP或Perl不是JavaScript。我也是一个新手,但我有这样的困境拿出一些我想做的事情和PHP为我做的伎俩。我最终使用js来验证表单数据,并在检出后将它传递给php。如果你想检查数据是否存在,并且不包含任何你不需要或者不需要的东西,js是非常棒的。这对安全并不好。