Извлечение данных возврата Ajax в jQuery
Я сделал jQuery и Ajax, но я не могу получить ответ в элемент Div. Это код:
Index.html
$.ajax({
type:"POST",
url: "ajax.php",
data:"id="+id ,
success: function(html){
$("#response").html(data);
}
});
Получает ответ на мой <div id="response"></div>
.
ajax.php
возвращает следующий код в файл index.html
:
<div id ="one"> OneVal </div>
<div id ="sub"> SubVal </div>
Могу ли я извлечь OneVal и Subval в переменную, и как я могу извлечь "OneVal" и "SubVal" вместо ответа?
Ответы
Ответ 1
Вы можете использовать .filter
для объекта jQuery, который был создан из ответа:
success: function(data){
//Create jQuery object from the response HTML.
var $response=$(data);
//Query the jQuery object for the values
var oneval = $response.filter('#one').text();
var subval = $response.filter('#sub').text();
}
Ответ 2
Измените .find
на .filter
...
Ответ 3
Я заметил, что ваша функция успеха имеет параметр "html", и вы пытаетесь добавить "данные" к своим элементам html()
... Измените это так, чтобы оба они соответствовали:
$.ajax({
type:"POST",
url: "ajax.php",
data:"id="+id ,
success: function(data){
$("#response").html(data);
}
});
Ответ 4
Вы можете использовать json
, как в следующем примере.
PHP code:
echo json_encode($array);
$array
- данные массива, а код jQuery:
$.get("period/education/ajaxschoollist.php?schoolid="+schoolid, function(responseTxt, statusTxt, xhr){
var a = JSON.parse(responseTxt);
$("#hideschoolid").val(a.schoolid);
$("#section_id").val(a.section_id);
$("#schoolname").val(a.schoolname);
$("#country_id").val(a.country_id);
$("#state_id").val(a.state_id);
}
Ответ 5
Вы также можете использовать параметр jQuery контекст. Ссылка на документы
Контекст селектора
По умолчанию селекторы выполняют свои поиски в начале DOM в корне документа. Однако альтернативный контекст может быть задан для поиск с использованием необязательного второго параметра для функции $()
Поэтому вы также можете:
success: function(data){
var oneval = $('#one',data).text();
var subval = $('#sub',data).text();
}
Ответ 6
по успеху: function (response) {alert (response.d); }