首页 > 解决方案 > 无法在 onclick 调用函数中修改节点的值

问题描述

onclick使用 PHP 设置调用事件的函数的参数,并将“this”(按钮)作为参数传递,以便在我的函数中访问最近的<td>节点并更改其值。但是,我无法更改节点的值。我明白了

不是函数

每次我尝试修改它时都会出错。

PHP代码:

echo "<tr><td>";
echo "<button onclick='updateValue($index,$byte,this)'></button>";
echo "<td>".$byte."</td>";
echo "<td>".$comment."</td>";
echo "</tr>";

还有我的 JS 函数:

function updateValue(index,byte,button){
     $.ajax({
       url : 'commentrefresh.php',
       type : 'GET',
       data : 'bytenumber=' + byte +"&byte_id=" +index,
       datatype : 'text',

       success : function(data){
           button.closest('tr').lastChild.val(data)
       }
   })
}

标签: javascriptphpjqueryhtml

解决方案


检查这个提琴手和我获得 lastChild td 节点的方式。
https://jsfiddle.net/aqmtjs8k/

$(button).closest('tr').find('td:last-child')


如果你想写在最后td你应该使用.html()而不是.val()

.val()只为inputs


正确方法:

$(button).closest('tr').find('td:last-child').html(data)


推荐阅读