多个select,当一个select值改变时判断其他select(不包括自己)当前是否是同样的值

一个tr里面有多个td,每个td里面都有一个select,现在想给其中一个select绑定change事件时判断其他select(不包括change的select自身)的当前选中值是不是同样的值(ps:所有select的option都是一样的),自己有尝试在select发生change时遍历,each方法却把所有select都遍历出来了,怎么在遍历的时候剔除当前select的值

html结构大概是这样

<table>
  <thead>
  </thead>
  <tbody>
     <tr>
       <td>
         <select><option>1</option><option></option></select>
       </td>
       <td>
         <select><option>1</option><option>2</option></select>
       </td>
       <td>
         <select><option>1</option><option>2</option></select>
       </td>
      </tr>
    </tbody>
  </table>

阅读 3.3k
2 个回答

event target 可以排除自身

你不是给每个select都绑定了事件吗,用一下筛选就行了

$('select').change(function(){
    $(this).parent().siblings().find('select').each(function(){
      alert($(this).val()) // 除了自身以外的select value
    })
})
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题