将元素ID(在参数中)传递给函数(jQuery)

时间:2015-03-04 16:53:19

标签: jquery function parameters

我正在尝试为手机(小屏幕)创建一个点击选择。

我有一个表,每行有一个复选框。他们的ID是动态创建的(来自PHP)。

如果用户点击其中一个表格行,我希望用户选中/取消选中这些复选框。

我找到了关于如何执行点按事件的jQuery脚本。

$("tr").on("taphold",function(){
   //....
});

我可以使用this来获取元素,但是我在tr上触发事件而不是复选框。如果复选框的这些ID是动态制作的,我如何将元素ID作为参数传递?

在javascript中,我可以这样做(点击)...

function selectItem(elementID)
{
   // Do something...
}

我在html中调用了这个函数......

<tr onclick="selectItem('record1')">

我应该使用jQuery,因为JavaScript没有点击保持事件。

如何在jQuery中做这样的事情?

1 个答案:

答案 0 :(得分:0)

$("tr").on("taphold", function(){
    //get me an input with type checkbox inside this element
    var checkbox = $('input[type=checkbox]', this);
    //check it
    checkbox.prop('checked', true);
    //you can also get its ID
    alert(checkbox.attr('id'));
});

另外,请查看文档http://api.jquery.com/category/traversing/

的这一部分

我的回答是假设你有这个HTML结构:

<table>
    <tr>
        <td><input type="checkbox" /></td>
        <td>My item 1</td>
    </tr>
    <tr>
        <td><input type="checkbox" /></td>
        <td>My item 2</td>
    </tr>
    <tr>
        <td><input type="checkbox" /></td>
        <td>My item 3</td>
    </tr>
</table>

如果您添加有关HTML的更多信息,我可以为您提供更好的帮助。