将PHP变量传递给JavaScript以在jQuery.ajax中使用
我想将一个变量从将PHP变量传递给JavaScript以在jQuery.ajax中使用,javascript,php,jquery,html,ajax,Javascript,Php,Jquery,Html,Ajax,我想将一个变量从PHP传递到JavaScript,以便在我的jQuery.ajax-调用中使用它。我现在做了很多尝试,但都没有成功 这是我目前的代码: $(文档).ready(函数(){ 函数getLog(){ ms=Date.now(); var chatlink=“”; $.ajax({ url:chatlink+ms, 数据类型:“文本”, 成功:函数(文本){ $(“#聊天”).text(text,); setTimeout(getLog,500);//每半秒刷新一次 } }) } /
PHP
传递到JavaScript
,以便在我的jQuery.ajax
-调用中使用它。我现在做了很多尝试,但都没有成功
这是我目前的代码:
$(文档).ready(函数(){
函数getLog(){
ms=Date.now();
var chatlink=“”;
$.ajax({
url:chatlink+ms,
数据类型:“文本”,
成功:函数(文本){
$(“#聊天”).text(text,
);
setTimeout(getLog,500);//每半秒刷新一次
}
})
}
//这里有更多的代码
如何将PHP变量传递给JavaScript
建议:
将必须使用PHP生成的内容部署为全局变量,并在脚本中使用它们以保持源代码的干净
PHP文件中的HTML
如何通过ajax获取PHP变量 PHP文件中JSON编码的PHP数组
工具书类
上面的解释实际上是一个编辑 请参阅下面的片段,该片段是标记为已接受的原始答案。
$(文档).ready(函数(){
函数getLog(){
ms=Date.now();
var chatlink=“”;
$.ajax({
url:chatlink+ms,
数据类型:“文本”,
成功:函数(文本){
$(“#聊天”).text(text,
);
setTimeout(getLog,500);//每半秒刷新一次
}
})
}
}
如何将PHP变量传递给JavaScript
建议:
将必须使用PHP生成的内容部署为全局变量,并在脚本中使用它们以保持源代码的干净
PHP文件中的HTML
如何通过ajax获取PHP变量 PHP文件中JSON编码的PHP数组
工具书类
上面的解释实际上是一个编辑 请参阅下面的片段,该片段是标记为已接受的原始答案。
$(文档).ready(函数(){
函数getLog(){
ms=Date.now();
var chatlink=“”;
$.ajax({
url:chatlink+ms,
数据类型:“文本”,
成功:函数(文本){
$(“#聊天”).text(text,
);
setTimeout(getLog,500);//每半秒刷新一次
}
})
}
}
在javascript中回显之前向上移动
。您是否曾经查看过页面的源代码或检查过浏览器控制台的错误?查看源代码或检查元素并追溯到JS它应该向您显示php
是如何输出的,如果出现错误,控制台应该显示错误。这是ins吗ide是一个php文件?如果不是,它将不起作用。它是在一个php文件中,并且…是的,正确的位置得到了工作。谢谢大家:在javascript中回显之前,可能会复制Move
。您是否曾经查看过页面的源代码或检查过浏览器控制台的错误?查看源代码或检查element&trace bac对于JS,它应该向您展示php
是如何输出的,如果出现错误,控制台应该显示错误。这是在php文件中吗?如果不是,它将不起作用。它在php文件中,并且…是的,正确的位置起到了作用。谢谢大家:这可能是重复的。我应该注意这个简单的错误t首先:D@Rhabdomyolyse也要考虑我的答案中的编辑……(如果你愿意),这就起了作用。D@Rhabdomyolyse还考虑编辑在我的答案……(如果你愿意)
<?php
error_reporting(-1);
$foo = 'bar'; #1
$arr_foo = array( 'bar', 'baz', 'blong' ); #2
$arr_js = array(); #3 | start collection
$arr_js['foo'] = $foo; #3 | extend collection ...
$arr_js['arrFoo'] = $arr_foo; #3
$arr_js['null'] = null; #3
$arr_js['bool'] = true; #3
$arr_js['int'] = 0; #3
$arr_js['float'] = 0.123; #3
echo "<script>
/* make sure to declare your name space if you haven't already */
window.yourApp = window.yourApp || {};
/* #1 deploy your PHP variable as markup
don't forget to wrap variables properly if nessecary */
window.yourApp.foo = '$foo';
/* #2 if you are not sure if the PHP variable contains signs that must be escaped
or have a non primitive type such as arrays then JSON is there to the rescue */
window.yourApp.arrFoo = " . json_encode( $arr_foo ) . ";
/* #3 if you have a lot of vars that you want to transfer to your JS you could
also collect them in an assoziative array and then deploy them all in one
as described above */
window.yourApp = " . json_encode( $arr_js ) . "; /* most convenient way IMHO */
console.log( window.yourApp );
</script>";
console.log( window.yourApp );
<?php $arr_js = array(
'foo' => 'bar',
'arrFoo' => array( 'bar', 'baz', 'blong' ),
'null' => null,
'bool' => true,
'int' => 0,
'float' => 0.123,
'two way magic :)' => $_POST['yourApp']['coming from sender']
);
echo json_encode( $arr_js );
// lets assume the name of this file is "ajax-json.php"
// must be located in the same directory as "ajax-json.php" in this setup
// make sure jQuery is available!
jQuery.ajax({
method: 'POST',
url: 'ajax-json.php',
dataType: 'json',
data: {yourApp: {'coming from sender': 'pure awesomeness'}},
success: function( response ) {
console.log( response )
}
})