简体   繁体   English

拒绝下拉菜单的第一个选项

[英]dissalow first option of drop down menu

How can I dissalow the first option of the following drop down menu (when "Go" is clicked, nothing should happen): 我该如何拒绝以下下拉菜单的第一个选项(单击“执行”时,什么也不会发生):

HTML : HTML:

<form name="form_name">
    <select name="ddmenu_name">
        <option>1st option (should do nothing)</option>
        <option value="link 1">link 1 name</option>
        <option value="link 2">link 2 name</option>
        <option value="link 3">link 3 name</option>
        <option value="link 4">link 4 name</option>
        <input type="button" name="Submit" value="Go" onClick="window.open(ddmenu_name.value,'newtab')">
    </select>
</form>

Thank you! 谢谢!

If the purpose of the first option is to provide a header, use an optgroup : 如果第一个选项的目的是提供标题,请使用optgroup

<select name="ddmenu_name"> 
    <optgroup label="1st option (should do nothing)">
        <option value="link 1">link 1 name</option> 
        <option value="link 2">link 2 name</option> 
        <option value="link 3">link 3 name</option> 
        <option value="link 4">link 4 name</option>
    </optgroup> 
</select>

Works in all major (old and new) browsers. 适用于所有主要(新旧)浏览器。 Doesn't require JavaScript. 不需要JavaScript。

If that wasn't the intention you could do something like this: 如果这不是您的意图,则可以执行以下操作:

var previous;
$('#ddmenu_id').on('change', function() {
    if ($(this).val() === 'noselect') {
        $(this).val(previous);
    }
    else {
        previous = $(this).val();
    }
});

With HTML: 使用HTML:

<select name="ddmenu_name" id="ddmenu_id"> 
<option value="noselect">1st option (should do nothing)</option> 
<option value="link 1">link 1 name</option> 
<option value="link 2">link 2 name</option> 
<option value="link 3">link 3 name</option> 
<option value="link 4">link 4 name</option> 
</select>
<input type="button" name="Submit" value="Go" onClick="window.open(ddmenu_name.value,'newtab')"> 

You can see it in action here . 您可以在此处查看它的运行情况。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM