我在使用td
从jQuery
获取值时遇到了麻烦。
它一直在说" undefined"或者没有结果出来,但我编辑了我的代码。
我不知道有什么不对......
这是我的代码: (最初,来自mySQL DB的数据应该在表格中。但我省略了它们以便使问题更简洁)
<html>
<head>
<script src="https://code.jquery.com/jquery-3.2.1.min.js"></script>
<script src="https://cdn.jsdelivr.net/jquery.validation/1.16.0/jquery.validate.min.js"></script>
<script src="https://cdn.jsdelivr.net/jquery.validation/1.16.0/additional-methods.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$(".delete").click(function(){
var currentrow=$(this).closest('tr');
var item=currentrow.find('.id').text();
alert("delete item number:".item);
});
$(".approve").click(function(){
alert("approve!");
});
$(".edit").click(function(){
alert("edit!");
});
});
</script>
</head>
// Table that contains data
<body>
<table>
<tr>
<td class='id'>
</td>
<td>
</td>
<td>
<input type='button' class='delete' value='Delete'/>
</td>
<td>
<input type='button' class='approve' value='Approve'/>
</td>
<td>
<input type='button' class='edit' value='Edit'/>
</td>
</tr>
</table>
</body>
</html>
答案 0 :(得分:0)
find()
将返回一个元素数组。您需要获取第一个元素,然后执行文本查找,如下所示:
var item=$(currentrow.find('.id')[0]).text();
此外,在Javascript中,您使用+连接字符串(而不是像PHP一样使用。)
alert("delete item number:" + item);