通过 Javascript 更改时,Safari/Chrome 不发布值
我有一些隐藏的表单元素,如下所示:
<input type="hidden" name="numberOfAdults" />
然后我有一个 onsubmit 函数,它执行一些加法并将总和放入隐藏字段中:
form.numberOfAdults.value = numAdults;
表单的提交取决于此函数返回 true 还是 false。提交表单时,IE7+ 和 Firefox 显示 onsubmit 函数中更改的值。 Safari 和 Chrome 没有。但是,如果我给隐藏输入默认值:
<input type="hidden" name="numberOfAdults" value="2" />
那么该值就会被传递。为什么 Safari 和 Chrome 会忽略这些更改后的值?
编辑:这是完整的代码:http://jsfiddle.net/2q8SX/
I have a few hidden form elements like so:
<input type="hidden" name="numberOfAdults" />
I then have an onsubmit function that does some addition and puts the sum into the hidden fields:
form.numberOfAdults.value = numAdults;
The form is submitted depending on if this function returns true or false. When the form is submitted, IE7+ and Firefox show the changed value from the onsubmit function. Safari and Chrome do not. However, if I give the hidden inputs default values:
<input type="hidden" name="numberOfAdults" value="2" />
Then the value gets passed. Why are Safari and Chrome ignoring these changed values?
EDIT: Here is the complete code: http://jsfiddle.net/2q8SX/
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
只是一个疯狂的猜测:
给你的提交按钮:
并添加到你的 function() 作为最后一个命令:
just a wild guess:
give your submit button:
and add to your function() as it's last command: