jQuery 选择第一个值以外的值时,如何自动提交下拉列表?

声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow 原文地址: http://stackoverflow.com/questions/19086737/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me): StackOverFlow

提示:将鼠标放在中文语句上可以显示对应的英文。显示中英文
时间:2020-08-26 23:09:05  来源:igfitidea点击:

How do I auto submit a dropdown when a value is selected other than the first value?

javascriptjqueryhtml

提问by user1899891

Current Code:

当前代码:

<select name='PreviousReceiver' onchange='this.form.submit()'>
     <option value='0'>Contact List</option>
     <option value='1'>blah</option>
     <option value='2'>blah2</option>
     <option value='3'>blah3</option>
</select>

So I have this dropdown box that auto submits when the user clicks it. It works fine the way it is, but I dont want it to submit if the user has the first value selected(see above).

所以我有这个下拉框,当用户点击它时会自动提交。它的工作方式很好,但如果用户选择了第一个值(见上文),我不希望它提交。

In other words, if the user clicks contact list, then I don't want it to submit the form.

换句话说,如果用户单击联系人列表,那么我不希望它提交表单。

I tried this:

我试过这个:

 onchange="if(this.value != '0') this.form.submit()" 

but that just made it never activate.

但这只是让它永远不会激活。

Any suggestions?

有什么建议?

回答by Saranya Sadhasivam

Try without quotes and check.

尝试不使用引号并检查。

DEMO HERE

演示在这里

<form method="post">
    <select name='PreviousReceiver' onchange='if(this.value != 0) { this.form.submit(); }'>
         <option value='0'>Contact List</option>
         <option value='1'>blah</option>
         <option value='2'>blah2</option>
         <option value='3'>blah3</option>
    </select>
</form>

回答by iJade

Try to call a function on change (use jquery):

尝试在更改时调用函数(使用 jquery):

<select name='PreviousReceiver' onchange='DoSubmit(this);'>
 <option value='0'>Contact List</option>
 <option value='1'>blah</option>
 <option value='2'>blah2</option>
 <option value='3'>blah3</option>
 </select>

Here goes your javascript function:

这是你的javascript函数:

function DoSubmit(sel)
{
     if(sel.val()!='0') this.form.submit();
}

回答by Patrik

maybe you would like something like this?

也许你想要这样的东西?

<select name='PreviousReceiver' onchange='this.form.submit()'>
  <option selected disabled>Contact List</option>
  <option value='1'>blah</option>
  <option value='2'>blah2</option>
  <option value='3'>blah3</option>
</select>

回答by Vinod Louis

you have to write javascript keyword

你必须写javascript关键字

SEE HERE

这里

 <form>
<select name='PreviousReceiver' onchange="javascript: if(this.value != '0') this.form.submit(); else alert('hello');" >
    <option value='0'>Contact List</option>
    <option value='1'>blah</option>
    <option value='2' selected>blah2</option>
    <option value='3'>blah3</option>
</select>
 </form>