通过 select onchange 和按钮提交表单。输入的不同值

Submit a form through select onchange and through button. Different values for an input

我有一个包含不同 <select> 字段和一个按钮的表单。我想在 onchange a select 和单击按钮时提交表单。但是,我有另一个隐藏的输入字段,如果通过 onchange 或通过单击按钮提交表单,我希望这个隐藏字段的值不同。

非常感谢。

<form method="get" action="stats2.php" id="myform">
<select name="year" id="selYear" onchange="this.form.submit()">
<option value=2015>2015/16</option> 
<option value=2014>2014/15</option> 
<option value=2013>2013/14</option>
</select> 
<input type="hidden" name="myinput" value="0"/></input> 
<input type = "submit" value="Run it!"></input>
</form>

您可以添加一个 javascript 函数来处理 onchange 事件;

<form method="get" action="stats2.php" id="myform">
    <select name="year" id="selYear" onchange="onChange()"> 
    <option value=2015 <?php if ($year==2015) { echo "selected='selected'";}?>>2015/16</option> 
    <option value=2014 <?php if ($year==2014) { echo "selected='selected'";}?>>2014/15</option> 
    <option value=2013 <?php if ($year==2013) { echo "selected='selected'";}?>>2013/14</option> 
   <input type="hidden" name="myinput" value="0"/> 
   <input type = "submit" value="Run it!" onclick="onSubmitClick()"/></form>

您的 JavaScript 您可以为 selYear

创建更改事件处理程序
<script>
   function onChange(){
       document.getElementsByName("myinput")[0].value = "changed";
       document.getElementById("myform").submit();      
  }

  function onSubmitClick(){
       document.getElementsByName("myinput")[0].value = "Something else";
       return true;
  }
</script>