переключатели данных в ajax - PullRequest
0 голосов
/ 04 марта 2012

Привет! Я динамически распечатываю список переключателей с помощью php, используя следующий код:

<form method="post">
<p>Name of list:   
  <label for="name"></label>
 <input type="text" name="name" id="name">
</p>
<p>Name of item:
<input id="first_name" name="first_name" type="text" /> 
<br />
<?php echo $form;?>
<input name="myBtn" type="submit" value="Submit Data" onClick="javascript:ajax_post();"></form>

где $ form - это переменная, в которой сохраняется список переключателей. Теперь мне нужно передать выбранную переключатель в другой файл php с помощью функции ajax ajax_post (). Но так как мой метод формы - POST, моя функция ajax переопределяется и не вызывается. вот моя функция ajax

function ajax_post(){

var hr = new XMLHttpRequest();
var id = '<?php echo $id; ?>';
var rd = '<?php echo $_POST['radio'];?>';
var url = "my_parse_file.php";
var fn = document.getElementById("first_name").value;
  var nm = document.getElementById("name").value;

 var vars = "todo="+fn+"&name="+nm+"&id="+id+"&rd="+rd;
hr.open("POST", url, true);

hr.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
hr.onreadystatechange = function() {
    if(hr.readyState == 4 && hr.status == 200) {
        var return_data = hr.responseText;
        document.getElementById("status").innerHTML = return_data;
    }
}
hr.send(vars); // Actually execute the request

}

Мне нужно, чтобы он был POST, потому что я хочу извлечь какую кнопку радио я нажимаю, и мне также нужна функция ajax для работы ... каким-либо образом?

1 Ответ

0 голосов
/ 04 марта 2012

Вам необходимо return false; от вашей функции, чтобы избежать отправки формы обычным способом.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...