我是编程新手,我正在学习JQuery。我有一个问题,如果我在列属性中有一个按钮,当我单击该属性的单元格中的按钮时,我想找到该单元格的唯一ID的值,即,如果我的属性名称被批准为值我通过按钮单击在Yes和No之间切换,我想在JQuery中获取唯一ID的名称attibute,以便我可以使用AJAX调用更新已批准的值。
<table>
<th>S.no</th>
<th>Name</th>
<th>Submitted by</th>
<th>Approved</th>
<tr>
<td>1.</td>
<td>XYZ</td>
<td>21-3-04</td>
<td>NO <input type = "button" onclick = "toggle()" value = "click"/></td></tr>
.
.
.
</table>
<script>
function toggle(){
//I want to fetch the value of the Name attribute for the row in which my button was clicked. and later I want to call an ajax call to a url that will consist of Update query.
}
</script>
答案 0 :(得分:1)
首先,你所谓的“属性”是一个“元素”。
其次,摆脱内联onclick=
属性。
然后,使用一些适当的jQuery方法:
$(document).ready(function () {
$("table td input[type='button']").click(function () {
var name = $(this).closest('tr').children().eq(1).text();
// do something with name
alert(name);
});
});
演示:http://jsfiddle.net/EVuGV/1
也就是说,将点击处理程序绑定到表格中的所有输入按钮元素(理想情况下,您将为表格提供id
属性并使用该属性,例如$("#idOfTable td")
)。在函数中,this
将被设置为被单击的特定按钮,因此可以使用jQuery的DOM导航方法转到包含tr元素,然后在tr的子项中选择第二个并获取它文本。
答案 1 :(得分:0)
试试这个:
<强> HTML 强>
<input type="button" value="click"/>
<强> SCRIPT 强>
<script>
$(function(){
$("table td input[type='button']").on('click',function () {
console.log($(this).closest('tr').find('td:eq(1)').text();)
}
});
</script>
答案 2 :(得分:0)
$('input[type=button]').click(function(){
alert($(this).closest('tr').find('td:nth-child(2)').html());
});
请参阅示例。
注意:我编写代码只获取该行的“Name”值。