PHP填充按钮onclick问题

Posted

技术标签:

【中文标题】PHP填充按钮onclick问题【英文标题】:PHP populated button onclick issue 【发布时间】:2012-03-19 02:46:50 【问题描述】:

我遇到了一个问题,我用 onclick 填充了一个按钮,我看到在 html 中一旦填充(在文档首次加载后)onclick 就在那里,但它不会触发该函数,这是 php代码:

while($row = sqlsrv_fetch_array($result))

    echo('<div class="row">
    <div class="col"><span>Company Name: ' . $row['CompanyName'] . '</span></div>
    <div class="col"><span>Telephone: ' . $row['CustomerNumber'] . '</span></div>
    <div class="col"><span>Access Code: ' . $row['AccessCode'] . '</span></div>
    <div class="col"><span>Active: ' . $row['Active'] . '</span></div>
    <input type="button" value="Delete" onClick="javascript:delete(this);"></input></div><br />');

删除函数与填充按钮(函数 delete(e))在同一页面上,您知道为什么它不会触发吗?

注意没有JS错误并且启用了javascript(可以直接从浏览器调用函数)

编辑:

这是 HTML 输出中的 1 行:

    <br>
<div class="row">
<div class="col">
<span>Company Name: TBC</span>
</div>
<div class="col">
<span>Telephone: 354</span>
</div>
<div class="col">
<span>Access Code: </span>
</div>
<div class="col">
<span>Active: </span>
</div>
<input type="button" onclick="delete(this);" value="Delete">
</div>

【问题讨论】:

你不需要javascript: 部分;) delete javascript 函数中有什么内容? 附注您应该使用“,”(回声可以带多个参数)而不是“。” (字符串连接) 可以发布生成的 HTML 吗? Topener 谢谢,已移除,但没有效果。 powtac 抱歉,匆忙 :) scibuff 只是一个警报。我会改用 , 但我不相信这会影响这个问题。 【参考方案1】:

去掉javascript:就离开:onclick="delete( this )"

【讨论】:

这真的是问题的答案吗? 我已经试过了(抱歉我没有提到),一点运气都没有,没有触发,javacript函数在填充按钮的页面上如下:function delete(e) 警报(“触发”); 我没有收到我的警告框 :(【参考方案2】:

delete() 是 javascript 中的保留字,请尝试将函数名称更改为 deleteIt() 或其他名称。

【讨论】:

谢谢 Niklas,因为函数名是保留字! :) 我在 JS 中引用按钮进行删除,我用它来引用父节点(它是随机 ID),所以我可以从数据库和 DOM 中删除它。

以上是关于PHP填充按钮onclick问题的主要内容,如果未能解决你的问题,请参考以下文章

使用适配器中的 onClick 侦听器填充单选按钮组的 ListView

按钮 onClick 和 ListView onItemClick

如何在onclick按钮中执行php [重复]

PHP:如何从按钮中删除带有 onclick 事件的 cookie

使用html中的按钮onclick将php数组发送到javascript函数

如何在android的ListView中为按钮添加OnClick()?