创建动态按钮ID并将ID发送到javascript函数。Javascript函数不接受

创建动态按钮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

正在尝试将按钮的动态id添加为

  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>