Javascript 如何区分“选择更改”和“提交”按钮何时提交表单
我需要帮助确定何时通过onChange事件提交我的表单以进行选择,而不是用户单击提交按钮 使事情复杂化的是,我需要能够识别PHP中的差异 示例HTML:Javascript 如何区分“选择更改”和“提交”按钮何时提交表单,javascript,php,html,forms,Javascript,Php,Html,Forms,我需要帮助确定何时通过onChange事件提交我的表单以进行选择,而不是用户单击提交按钮 使事情复杂化的是,我需要能够识别PHP中的差异 示例HTML: <form name='editdata' method='post' action='/editpage/recordnumber'> <select name='select1' onchange='this.form.submit()'><options...></select> <
<form name='editdata' method='post' action='/editpage/recordnumber'>
<select name='select1' onchange='this.form.submit()'><options...></select>
<select name='select2' onchange='this.form.submit()'><options...></select>
<select name='select3' onchange='this.form.submit()'><options...></select>
<input type='submit' value='Submit' />
</form>
最后,我只需要使用PHP来识别表单是通过onChange事件提交还是通过按下Submit按钮提交
到目前为止,我发现我可以将我的提交按钮命名为“提交”。这将设置$\u POST['submit']
,从而告诉我用户单击了按钮。但是,当我将name属性添加到submit按钮时,我的onChange事件this.form.submit()会停止运行,该事件应用于我的几个选择
如果我可以使用一种或另一种方法在提交URL的末尾添加某种查询字符串,我认为这将完成工作。您可以设置一个隐藏字段,该字段将由事件更新:
<form name='editdata' method='post' action='/editpage/recordnumber'>
<input type="hidden" name="submitted_on_change" value="0">
<select name='select1' onchange='form_submit()'><options...></select>
<select name='select2' onchange='form_submit()'><options...></select>
<select name='select3' onchange='form_submit()'><options...></select>
<input type='submit' value='Submit' />
</form>
<script>
var form_submit = function() {
// update the hidden field to 1
// then submit the form
}
</script>
var form_submit=函数(){
//将隐藏字段更新为1
//然后提交表格
}
您可以设置一个隐藏字段,该字段由事件更新:
<form name='editdata' method='post' action='/editpage/recordnumber'>
<input type="hidden" name="submitted_on_change" value="0">
<select name='select1' onchange='form_submit()'><options...></select>
<select name='select2' onchange='form_submit()'><options...></select>
<select name='select3' onchange='form_submit()'><options...></select>
<input type='submit' value='Submit' />
</form>
<script>
var form_submit = function() {
// update the hidden field to 1
// then submit the form
}
</script>
var form_submit=函数(){
//将隐藏字段更新为1
//然后提交表格
}
您可以在onchange中调用多个函数,并用导致表单提交的select字段的名称填充另一个字段(或按下submit按钮时该字段为空):
您可以在onchange中调用多个函数,并用导致表单提交的select字段的名称填充另一个字段(或按下submit按钮时该字段为空):
只需检查$\u POST['submit']
查看是否已设置,但请确保先命名。只需检查$\u POST['submit']
查看是否已设置,但确保先命名。呸!很简单,但我没有想到。我已经实施并发挥作用。工作起来很有魅力。谢谢哼!很简单,但我没有想到。我已经实施并发挥作用。工作起来很有魅力。谢谢