Maison  >  Article  >  développement back-end  >  javascript调用php数组变量有关问题!

javascript调用php数组变量有关问题!

WBOY
WBOYoriginal
2016-06-13 12:20:18966parcourir

javascript调用php数组变量问题!!
我在php里面定义的了一个数组, 想在内部的javascript函数中调用, 可是怎么都报错, 求各位大神帮忙看看!感激不尽!
php里面:

<br /><?php<br />$qst=array("R2","R3","R7");<br />$index_qst=3;<br />-----------------------------------<br />$qst[$index_qst]="R1";<br />		$index_qst++; // 动态的统计数组<br />-----------------------------------<br />$str = json_encode($qst); ?><br />


Js:
<br /><script type="text/javascript"><br /><br />	$(document).ready(function(){<br />		$("#send").click(function(){                               <br />			var empty =0;<br />			var nbr_qst = <?php echo "$str";?>; //<span style="color: #FF0000;">这一行一直报错</span><br />		for (var i in nbr_qst) {<br />					<br />				if (!$("input[name='i']").is(':checked')){<br />					empty=1;<br />				}<br />


打开网页原代码报错的部分显示如下
$(document).ready(function(){<br />		$("#send").click(function(){                    <br />			var test =0;                  <br />			var empty =0;<br />			var str = <br /><br />


快要崩溃了!!!! 求救!!
------解决思路----------------------
很明显那只是PHP的错误信息:
Notice: Undefined variable: str in C:\Users\btang\xampp\htdocs\QuestionaireV5\QuestionnaireV5\QuestionnaireV.php on line 11

建议你贴出完整的代码。
------解决思路----------------------
把  换成 =$str?> 出现错误
这表示你的 php 版本低于 5.4 且没有打开短标记功能
你使用了 xdebug 扩展,不会连 xdebug 的报告格式也不知道吧?

不过错误信息的内容与你的描述不一致,不好说什么了

既然你使用了 JQuery,那么就会要使用他的无刷新功能
但是你把 php 动态生成的数据直接嵌入在 js 代码中,这在流程上是不对的
也不能发挥出 JQuery 的性能
------解决思路----------------------

引用:
Quote: 引用:

把  换成 =$str?> 出现错误
这表示你的 php 版本低于 5.4 且没有打开短标记功能
你使用了 xdebug 扩展,不会连 xdebug 的报告格式也不知道吧?

不过错误信息的内容与你的描述不一致,不好说什么了

既然你使用了 JQuery,那么就会要使用他的无刷新功能
但是你把 php 动态生成的数据直接嵌入在 js 代码中,这在流程上是不对的
也不能发挥出 JQuery 的性能


确实是菜鸟,而且程序不是我写的, 只是发现了一个bug要修改, 还在学习中
求大神指教要怎么做传进去呢


直接在js 的前面调用


  $(document).ready(function(){ 这个之前定义一个 var str =

在JS里面直接调用。
------解决思路----------------------
是不是JS哪块需要加收一个标签。就好像smarty的literal 标签一样。才能解析。
不行的话 你这样把那个数据放到一个"> 这样。然后在JS中通过DOM元素来获取。

------解决思路----------------------
引用:
Quote: 引用:

是不是JS哪块需要加收一个标签。就好像smarty的literal 标签一样。才能解析。
不行的话 你这样把那个数据放到一个"> 这样。然后在JS中通过DOM元素来获取。


$json_qst = json_encode($qst);<br />echo '<input type="hidden" name ="json_qst" value="<?php echo $json_qst;?>">';

var nbr_qst = document.getElementByname("json_qst");

js这里还是报错 是我写的不对吗


报什么错,不行加QQ群说吧:231566327
Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn