Значения радиокнопок отправляются с использованием 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);
Другие вопросы по тегам