请帮助我。
这可能是一个重复的问题,但我无法在任何地方找到解决方案。
我正在创建一个客观类型问卷,选项在单选按钮中。某些选项是必需的,如果用户单击该选项,则注释框将更改为必填字段。答案的名称是问题ID。这是我正在使用的输入字段
<input type='radio' name='answer_value[<?php echo $gques; ?>]' value='<?php echo $gans; ?>' id="rtr" onclick='ajaxFunction()'/>
我想用ajax做,因为当用户选择强制选项时,它会获取答案ID并使用该id执行查询以检查答案是否是强制性的。如果为true,则会使注释框成为必需的文本区域。我使用的ajax代码是
function ajaxFunction(){
var ajaxRequest;
try{
ajaxRequest = new XMLHttpRequest();
}catch (e){
try{
ajaxRequest = new ActiveXObject("Msxml2.XMLHTTP");
}catch (e) {
try{
ajaxRequest = new ActiveXObject("Microsoft.XMLHTTP");
}catch (e){
alert("Your browser broke!");
return false;
}
}
}
ajaxRequest.onreadystatechange = function(){
if(ajaxRequest.readyState == 4){
var ajaxDisplay = document.getElementById('ajaxDiv');
ajaxDisplay.innerHTML = ajaxRequest.responseText;
}
}
var ans_id = $("input[id=rtr]:checked").val();
var dataString = 'id='+ ans_id;
alert(dataString);
ajaxRequest.open("POST", "anschq.php" +dataString,true);
ajaxRequest.send();
}
在anschq.php中我放了一个警告脚本来检查是否发送了值。但是当我点击单选按钮时,其他页面不会显示警告框。 但是这里的alert(dataString)显示了选中按钮的值。
任何人都可以找到解决这个问题的方法.....
答案 0 :(得分:0)
这不是GET请求。您必须传递响应正文中的数据而不是网址(请参阅RFC)。
替换:
ajaxRequest.open("POST", "anschq.php" + dataString, true);
ajaxRequest.send();
通过
ajaxRequest.open("POST", "anschq.php", true);
ajaxRequest.send(dataString);