单击跨度时获取附近的输入元素(onclick事件)

时间:2014-10-12 13:14:58

标签: javascript jquery

我正在尝试使用nearest()函数获取附近的input元素,但是它说clostest不是函数...

这是一个JSFidlle:http://jsfiddle.net/1mvc76fv/

HTML:

<div>
    <input type="text" value="1"/>
    <span onClick="fireIt(this)">Kick</span>
</div>
<div>
    <input type="text" value="2"/>
    <span onClick="fireIt(this)">Kick</span>
</div>`

JS:

window.fireIt =  function(param) {
    tmp = param.closest('input');
    alert( tmp.val() );  
}

如何获得最接近的输入元素?为什么最近不起作用?

1 个答案:

答案 0 :(得分:1)

使用.prev()方法访问上一个输入

window.fireIt =  function(param) {
  tmp = $(param).prev('input');
  alert( tmp.val() );
}

Updated Fiddle


由于您已经在使用jquery,因此您可以使用它来绑定事件处理程序,而不是使用内联处理程序,如下所示:

$("span").click(function() {
  tmp = $(this).prev('input');
  alert(tmp.val());
});