#jquery
#jquery
Вопрос:
$(document).ready(function() {
$("button").click(getir);
});
function getir() {
$.ajax({
dataType: "json",
url:"get.php",
success: function(datacall) {
$.each(datacall,function(index,vals) {
$("span").append(index " : " vals "<br />");
});
}
});
}
данные json являются {«sez»: «soze», «koz»: «koze»}
но я получаю результат, подобный:
sez : soze
koz : koze
sez : soze
koz : koze
я не мог понять, почему это повторяется 2 раза?
Комментарии:
1. Есть ли два интервала на странице? jQuery добавлял бы текст к каждому интервалу.
2. как вы
<html>
и//server code
выглядите?3. @грег, ах, ты прав. на странице есть еще один интервал.
4. Чтобы добавить к комментарию @Greg, ваш выходной div должен иметь идентификатор и использовать селектор идентификаторов, а не выбирать все элементы span.
5. спасибо, Фоско, я присвоил идентификатор целевому диапазону, теперь он работает.
Ответ №1:
у вас случайно нет 2-х пролетов друг над другом?
ваша функция работает нормально: смотрите эту скрипку:
итак, либо ваши данные выглядят не так, как вы говорите, или у вас в вашем html больше одного интервала.
Ответ №2:
Если на странице более одного интервала, к каждому интервалу будет добавлен текст. Ограничьте работу jQuery только с одним диапазоном, указав более конкретный селектор, такой как идентификатор или класс.
Комментарии:
1. @markusmark — Я рад, что это было так просто. И добро пожаловать в Stackoverflow! Если мой ответ (или другой) отвечает на ваш вопрос, то, пожалуйста, отметьте его как правильный, щелкнув зеленую галочку. Я надеюсь, что вы останетесь здесь, это отличное сообщество.