Значения радиокнопок отправляются с использованием ajax php mysql
Пожалуйста, помогите мне с этим.
Это может быть повторяющийся вопрос, но я нигде не мог найти решение.
Я создаю анкету объективного типа, а опции находятся в переключателях. Некоторые параметры являются обязательными, и если пользователь щелкнет по этой опции, поле комментария изменится на обязательное поле. В названии ответов указан вопрос Id. Вот поле ввода, которое я использую
<input type='radio' name='answer_value[<?php echo $gques; ?>]' value='<?php echo $gans; ?>' id="rtr" onclick='ajaxFunction()'/>
Я хочу сделать это с помощью ajax, потому что, когда пользователь выбирает обязательную опцию, он получает идентификатор ответа и использует этот идентификатор для выполнения запроса, чтобы проверить, является ли этот ответ обязательным или нет. Если 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 я поместил скрипт оповещения, чтобы проверить, отправлено ли значение или нет. Но когда я нажимаю переключатель, окно предупреждения не отображается на другой странице. Но предупреждение (dataString) здесь отображает значение отмеченной кнопки.
Может кто-нибудь найти решение этой проблемы.....
1 ответ
Это не запрос GET. Вы должны передать данные в теле ответа, а не в URL (см. RFC).
Заменить:
ajaxRequest.open("POST", "anschq.php" + dataString, true);
ajaxRequest.send();
от
ajaxRequest.open("POST", "anschq.php", true);
ajaxRequest.send(dataString);