Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/291.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Onclick HTML不在PHP“echo”中调用Javascript函数_Javascript_Php_Html - Fatal编程技术网

Onclick HTML不在PHP“echo”中调用Javascript函数

Onclick HTML不在PHP“echo”中调用Javascript函数,javascript,php,html,Javascript,Php,Html,我正在尝试调用Javascript函数 如果我在Html中使用,它就可以工作了 <input type="button" value="Click Me" onclick="$.notify('Error: Sign in before Join.', 'error');" class="nk-btn"> 但我想在Php echo中使用该代码,但不起作用 echo" <input type='button' value='Click Me' onclick='$.noti

我正在尝试调用Javascript函数 如果我在Html中使用,它就可以工作了

<input type="button" value="Click Me"  onclick="$.notify('Error: Sign in before Join.', 'error');" class="nk-btn">
但我想在Php echo中使用该代码,但不起作用

echo" <input type='button' value='Click Me'  onclick='$.notify('Error: Sign in before Join.', 'error');' class="nk-btn"> "
由于使用单引号而不是双引号:

如何以另一种方式调用js函数???

您可以像

回音

echo

你可以这样做

回音

echo

您可以使用\在php中转义引号

echo "<input type='button' value='Click Me'  onclick=\"$.notify('Error: Sign in before Join.', 'error');\" class=\"nk-btn\">"
您的问题是,您在onclick和$.notify中使用了相同的引号 与类相同,您可以使用\在php中转义引号

echo "<input type='button' value='Click Me'  onclick=\"$.notify('Error: Sign in before Join.', 'error');\" class=\"nk-btn\">"
您的问题是,您在onclick和$.notify中使用了相同的引号
与类相同,不要在字符串中使用转义引号,只需关闭PHP块,编写HTML并在它之后再次打开一个新的PHP块(如果需要):

// Some PHP
?>

<input type="button" value="Click Me"  onclick="$.notify('Error: Sign in before Join.', 'error');" class="nk-btn">

<?php 
// More PHP
这不仅可以避免转义引号,而且大多数IDE的语法也可以突出显示HTML,这有助于可读性和调试

然而
更好的方法可能是根本不在元素上使用onclick属性,而是直接在js中注册

不要在字符串中乱用转义引号,只要关闭PHP块,编写HTML并在它之后再次打开一个新的PHP块(如果需要):

// Some PHP
?>

<input type="button" value="Click Me"  onclick="$.notify('Error: Sign in before Join.', 'error');" class="nk-btn">

<?php 
// More PHP
这不仅可以避免转义引号,而且大多数IDE的语法也可以突出显示HTML,这有助于可读性和调试

然而
更好的方法可能是根本不在元素上使用onclick属性,而是直接在js中注册

JavaScript无法调用PHP文件中声明的函数。您必须请求PHP文件,然后在该文件中确定应该运行什么代码。@ScottMarcus看起来OP是说使用echo以onclick方法输出元素不起作用,并不是说他们试图从JS调用PHP函数。你可以脱离PHP而不是使用echo语句——或者如果你愿意,可以使用语法。。。但是如果在tbh上没有这个函数的副本,我会感到惊讶。与其重复字符串,不如结束PHP块?>,编写HTML,然后在完成后,再次启动PHP块@ScottMarcus,实际上我们可以!你可以检查下面的答案!SolvedJavaScript无法调用PHP文件中声明的函数。您必须请求PHP文件,然后在该文件中确定应该运行什么代码。@ScottMarcus看起来OP是说使用echo以onclick方法输出元素不起作用,并不是说他们试图从JS调用PHP函数。你可以脱离PHP而不是使用echo语句——或者如果你愿意,可以使用语法。。。但是如果在tbh上没有这个函数的副本,我会感到惊讶。与其重复字符串,不如结束PHP块?>,编写HTML,然后在完成后,再次启动PHP块@ScottMarcus,实际上我们可以!你可以检查下面的答案!解决了的