【问题标题】:Jquery bind click to select options but not to the select element itselfJquery 绑定单击以选择选项,但不绑定到选择元素本身
【发布时间】:2011-10-01 10:08:04
【问题描述】:

有没有办法将点击事件绑定到选择选项而不是选择框本身?

更改事件对我也不起作用,因为当我第一次单击该框时,我无法选择第一个选项(因为默认情况下它已经被选中),我真的需要能够选择第一个选项.

有什么办法可以解决这个问题,绑定点击或更改事件?

【问题讨论】:

  • 添加“请选择...”选项或在页面加载时运行更改代码?
  • 另一个扳手放在这里...用户可以在不使用“点击”事件的情况下选择选项卡并进行选择。
  • 你试过$('option').click(function(){//..some code here});吗?
  • @Town 虽然在那里放了一个禁用的选项,但看起来有点不必要,因为我已经在标签上有了它,但是确实有效。真的不知道那个页面加载的想法,你能发布一个简单的例子吗? @kasdega 它必须是一个点击,但感谢你的想法。 @Trey 是的,我确实尝试过,但它不起作用,但不知道为什么。
  • @mfreitas:我已经在其中发布了两个答案。我认为您错过了@kasdega 评论的要点 - 用户 could 选项卡到 select 框不会触发 click 事件,所以如果您完全依赖 @987654324 @你可能会得到错误的结果。

标签: javascript jquery select click option


【解决方案1】:

你可以:

a)select 中添加一个“请选择...option 作为默认项。

b)在页面加载时运行“selection changed”代码以获取默认值something like this

<select>
    <option>one</option>
    <option>two</option>
    <option>three</option>
</select>

Current Value: <span></span>

// call the changed function on document ready
// to get the 'default' value
$(function() {
    selectionChanged();
});

// hook up the change event of the select box
$('select').change(selectionChanged);

// event handler for the change event
function selectionChanged(e) {
    $('span').html($('select').val());
}

【讨论】:

  • @mfreitas:我的快乐伙伴 :)
猜你喜欢
  • 2019-06-27
  • 2013-05-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多