通过复选框模拟CTRL按键

时间:2015-03-10 15:59:47

标签: javascript jquery html

如果你有一个包含50个选项的多选项后跟一个文本框的表单,按住ctrl键是我们正常选择倍数的方式,但有时你的32次点击和好事发生......现在你已经选择了一个或者没有。所以,我想知道的是,是否可以创建一个复选框,当选中时,特定选择字段中的所有点击被视为 ctrl 被按下时左键单击发生。

<form action="" method="post">
<input type="checkbox" name="marker" value="1"> Click here to select multiple<br>
 <select multiple style="width:50%" name="employees[]">
  <option value="volvo">Volvo</option>
  <option value="saab">Saab</option>
  <option value="opel">Opel</option>
  <option value="audi">Audi</option>
            |
            |
            |
            v
       50 more here
</select> <br>
    Your message here:<br>
    <textarea name="msg" style="width:50%"></textarea><br>
    <input name="submit" type="submit" value="submit" />
    </form>

2 个答案:

答案 0 :(得分:1)

使用JQuery,您可以轻松操作<select>,查看.val()功能。有了它,您可以知道所选内容,并可以添加您想要的内容。

答案 1 :(得分:0)

这是一个可能的脚本解决方案。 基于this solution

$('option').mousedown(function(e) {
    if ($('#marker').is(":checked")) {
        e.preventDefault();
        $(this).prop('selected', !$(this).prop('selected'));
        return false;
    }
});