在php变量中编写jquery函数
如何在PHP变量中编写JQuery完整函数,以便在我放置变量的地方调用它。该变量还包含回调json文本和php变量。那么这是怎么可能的,或者有其他方法可以做到这一点在php变量中编写jquery函数,php,jquery,html,json,Php,Jquery,Html,Json,如何在PHP变量中编写JQuery完整函数,以便在我放置变量的地方调用它。该变量还包含回调json文本和php变量。那么这是怎么可能的,或者有其他方法可以做到这一点 <?php $somevar='<div class="test"><script>document.ready(function(){$.ajax}' ; $body="<div>$somevar</div>"; echo $body; ?> 当我必须用
<?php
$somevar='<div class="test"><script>document.ready(function(){$.ajax}' ;
$body="<div>$somevar</div>";
echo $body;
?>
当我必须用PHP编写大型html或js时,我喜欢使用Heredoc语法
$variable = <<<EOT
<script>
$(document).ready(function(){
//your stuff
});
</script>
EOT;
阅读参考资料
手册中的注释
请务必注意,具有结束标识符的行不能包含除分号以外的任何其他字符;。这特别意味着标识符不能缩进,分号前后不能有空格或制表符。认识到结束标识符之前的第一个字符必须是本地操作系统定义的换行符,这一点也很重要。这在UNIX系统(包括Mac OS X)上是\n。结束分隔符后面还必须跟一个换行符
如果此规则被破坏,并且结束标识符不干净,则不会将其视为结束标识符,PHP将继续寻找一个结束标识符。如果在当前文件结尾之前未找到正确的结束标识符,则在最后一行将导致分析错误
Heredocs不能用于初始化类属性。由于PHP5.3,此限制仅对包含变量的heredocs有效
更新
根据OP的评论
<?php
$data = 'test';
$variable = <<<EOT
<script>
$(document).ready(function(){
alert('$data');
});
</script>
EOT;
?>
<html>
<head>
<title><?php echo $data; ?></title>
<?php echo $variable; ?>
</head>
<body>
<div><?php echo "The alert showed $data";?></div>
<body>
</html>
您当前的代码并不遥远。您需要在其中添加一个关闭脚本标记:
<?php
$somevar='<script>alert("something");</script>';
$body="<div>$somevar</div>";
echo $body;
?>
使用上面的代码,您可以将$somevar放在输出中的有效位置,也就是说放在两个其他html标记之间,javascript函数将打印出来。在我的例子中,每当我需要使用“$var”将变量调用为变量seprate时,它都会通过警报框显示“something” $var1=一些代码 $var2=代码“$var1.”其他代码
<?php
$somevar='<div class="test"><script>document.ready(function(){$.ajax}' ;
$body='<div>'.$somevar.'</div>';
echo $body;
?>
考虑在PHP输出缓冲区中包装javascript
<?php ob_start(); ?>
$(document).ready(function() {
var x = <?php echo $someVar; ?>;
});
<?php $script = ob_get_contents(); ob_end_clean(); ?>
您当前的代码有什么问题吗?PHP将像HTML一样写入页面,因此您可以完全执行您正在执行的操作,并且应该可以正常工作。您可能应该关闭脚本标记,请阅读并在jQuery函数上使用正确的语法,包括jQuery$函数{$.ajax…},它应该是->$document.readyfunction{是的,但它也有php变量,我在上面语句要求的参数后列表的语法中得到了一个错误。实际上我没有把完整的代码放在上面,它已经完成了所有的事情。你可以将php变量写入Heredoc syntaxya,但它也有php变量,我在上面语句要求的语法中得到了一个错误uires在参数列表之后。实际上我没有把完整的代码放在上面,它已经完成了所有的事情,如果它有php变量,那么也可以这样做:$somevar='alertsome php var='。$some_other_php_var';