jquery可见选择框更改事件

发布于 2024-10-26 00:02:16 字数 752 浏览 2 评论 0原文

我想知道为什么下面的代码没有按预期工作。

/***** selecting select box having options 5,6 *****/
$("select:visible:first").change(function () {
 alert("hi");
});

对于像这样的结构,

<div style="display: none;">
 <select>
  <option>1</option>
  <option>2</option>
 </select>

 <select>
  <option>3</option>
  <option>4</option>
 </select>
</div>

<div>
 <select>
  <option>5</option>
  <option>6</option>
 </select>

 <select>
  <option>7</option>
  <option>8</option>
 </select>
</div>

想法是当有人单击两个中的第一个时,选择可见的框,我应该显示所选的值。但不知何故,change() 没有被调用。

I want to know why the below code is not working as expected.

/***** selecting select box having options 5,6 *****/
$("select:visible:first").change(function () {
 alert("hi");
});

for structure like

<div style="display: none;">
 <select>
  <option>1</option>
  <option>2</option>
 </select>

 <select>
  <option>3</option>
  <option>4</option>
 </select>
</div>

<div>
 <select>
  <option>5</option>
  <option>6</option>
 </select>

 <select>
  <option>7</option>
  <option>8</option>
 </select>
</div>

The idea is that when somebody clicks on first of two, select boxes which are visible, I should show the selected value. But somehow the change() is not getting called.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

她比我温柔 2024-11-02 00:02:16
if($('select').is(':hidden')) {
   put here what you wanna change...
}

我会给你一个小小的启动:)

如果你没有掌握它,请发表评论:)

if($('select').is(':hidden')) {
   put here what you wanna change...
}

I'll give you a little start up :)

comment if your not geting a hold with it :)

当爱已成负担 2024-11-02 00:02:16

侦听器正在附加第三个选择框,即。值为 5,6 的选择框
http://jsfiddle.net/eLxvr/
此行为是正确的,因为:

前 2 个选择框位于样式 display:none 的 div 中,因此 $("select:visible:first") 将返回第三个选择框,因为它是第一个可见的框。

the listener is getting attached for third select box ie. the select box with values 5,6
http://jsfiddle.net/eLxvr/
this behaviour is correct as:

The first 2 select boxes are in a div with style display:none therefore $("select:visible:first") will return the third select box as it is the first visible one.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文