创建动态按钮ID并将ID发送到javascript函数。Javascript函数不接受
正在尝试将按钮的动态id添加为创建动态按钮ID并将ID发送到javascript函数。Javascript函数不接受,javascript,php,html,Javascript,Php,Html,正在尝试将按钮的动态id添加为 echo "<input type='button' id='$butid' class='btn btn-info' data-target='#prodetails' onclick='show($butid)' value='Details'>"; 我写的javascript函数 <script> function show(x) { docume
echo "<input type='button' id='$butid' class='btn btn-info' data-target='#prodetails' onclick='show($butid)' value='Details'>";
我写的javascript函数
<script>
function show(x)
{
document.getElementById("prodetails").innerHTML=x;
}
</script>
无法接收函数调用中传递的值。
传递的值是varchar获取输出为[object HTMLInputElement]如果您确实想要获取元素的Id,根据我对您想要做什么的猜测,您必须用引号将其括起来修复此部分:onclick='show$butid' 如上图所示修改您的代码,它肯定会工作,请看,您不能在php echo中编写html代码,相反,您应该使用html中的php代码 第二件事假设您希望将数据发送到函数,然后将数据分配给新属性,就像您编写了数据目标一样 传递这个函数,这意味着当前元素,在你的例子中是它的按钮 然后通过访问访问您的数据和id。例如x.id的操作员 我希望它能帮助你:
请记住:可以写为在onclick赋值中,您没有将字符串值用引号括起来。您的php变量不会被识别,因为它在字符串中。在您的例子中,您必须给您编写的函数赋值$butid。但是你的整个代码没有意义。当您必须使用id调用某个项目时,为什么要获取该项目的id?请提供更多代码/信息!当我试图打印接收到的值时,它会在调用中引用参数[object HTMLInputElement]。onclick=\show'$butid';\。只有数字可以不加引号发送。或者更好地单击“showthis;”并在函数中使用元素属性。@AlexKudryashev尝试了onclick='showthis;'但当我打印时,它显示[object HTMLInputElement]
<input type='button' id=<?= $yourId ?> class='btn btn-info' data-target=<?= $dataYouWantToSend ?> onclick=show(this) value='Details'>
<script>
function show(x)
{
x.innerHTML=x.data-target; //data-target is equal to the data you want to send to function this will add innerHTML = your dynamic data
console.log(x.id); //here you will get your dynamic id
}
</script>