如何从PHP打印按钮调用JavaScript函数

时间:2013-04-25 09:49:48

标签: php javascript

多么奇怪的问题。如果有人有更好的头衔,请继续编辑;我想不出还有什么可以称之为。我正在使用echo从PHP打印一个按钮。按钮的目的是通过调用JavaScript函数来显示表单,该函数使用document.getElementById()将表单标记的样式属性更改为可见,以便表单对用户可见。我遇到的问题是回显的字符串必须有引号,onclick事件必须有引号,传递给JavaScript函数的参数必须有引号。我尝试使用反斜杠escpaing参数的引号,但这不起作用。任何人都可以帮助我吗?

这是我的代码:

echo "<input type = 'button' onclick = 'showform(\'psswdform\')' value = 'Change password'>";//this shows the form and needs quotes

JavaScript函数:

function showform(id)
{
document.getElementById(id).style.visibility = "visible";
}

4 个答案:

答案 0 :(得分:2)

这对我有用吗? (working example)

<?php

echo "<input type = 'button' onclick = 'showform(\"psswdform\")' value = 'Change password'>";//this shows the form and needs quotes

生成:

<input type = 'button' onclick = 'showform("psswdform")' value = 'Change password'>

答案 1 :(得分:1)

尝试使用单引号和双引号的组合来连接字符串,如下所示:

echo '<input type="button" onclick="showform(' . "'psswdform'" . ')" value="Change password">';

答案 2 :(得分:1)

试试这个:

echo "<input type = 'button' onclick = 'showform('psswdform')' value = 'Change password'>";

此外,您可以尝试jQuery,这是一个超级流行的JS库,可以让生活更轻松。

我会制作以下CSS类。

.hide {
   display:none;
}

我要添加以下jQuery:

$("#show-password-reset").click(function(event){
 event.preventDefault();
 $("#passwdform").show();
});

最后包括你的节目按钮:

<input id="show-password-reset" type = 'button' value = 'Change password'>

确保在class="hide"元素上使用passwdform,以便在页面加载时隐藏它。

答案 3 :(得分:0)

PHP内部已经是一个转义字符。如果你想输出&#34; \&#34;你需要回应&#34; \\&#34;。