Ajax javascript 值 传给 php页面的 问题,急
用 $ajax.方法想把 javascript中的 字符串传到指定的php页面。 查了各种资料还是不知道问题出在哪?
请朋友帮忙看一下,代码如下:
javascript端:
<div id="gs_button"><input type="button" value="提交答案" class="gs_btn" id="sub" onclick = "return SubmitAnswersCheck();"></div>
<script type="text/javascript" src="http://www.coding123.net/rardownload/20110420/20110420113851756.js"></script>
<script type="text/javascript" src="http://www.coding123.net/js/jquery.js"></script>
<script type="text/javascript" language="javascript">
function SubmitAnswersCheck(){
var thisAnswerArr=new Array();
var answerStr;
<?php
for($i=0;$i< $count;$i++){
?>
var myObj=document.getElementsByName('answer<?php echo ($i+1);?>');
for(var j=0;j<myObj.length;j++){
if(myObj[j].checked){
thisAnswerArr.push(myObj[j].value);
}
}
<?php
}
?>
answerStr = thisAnswerArr.join("-"); //这个数需要传到php页面的字符串
$.ajax({
url:'answerJudge.php' //要传入的php页面
,type:"POST"
,data:{"answerStr":"answerStr "}
//,dataType: "json"
,success:function(data){alert(data.responseText);} //得到的永远都是undefined,不知道为什么
,error:function(xhr){alert('PHP页面有错误!'+xhr.responseText);}
});
//<?php echo $thisAnswerStr;?> = answerStr;
}
</script>
然后是php端的代码:
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<meta name="viewport" content="initial-scale=1.0;maximum-scale=1.0, user-scalable=no">
<?php
$anStr = $_POST['answerStr'];
//$json=json_decode($anStr);
echo $anStr;
?>