#javascript #jquery #html #each
#javascript #jquery #HTML #каждый
Вопрос:
Пожалуйста, взгляните на эту скрипку
Есть ли какой-либо способ вставить элемент <h3>text</h3>
после link - google.com
и <h3>sss</h3>
after color - Black
внутри второго цикла?
Я хочу, чтобы результат был таким:
title - A
link - google.com
<h3>text</h3>
image - image.com
price - $1295.00
brand - ABC
color - Black
<h3>sss</h3>
material - Rubber
Вот файл json и код:
JSON:
[
{
"title": "A",
"link": "google.com",
"image": "image.com",
"price": "$1295.00",
"brand": "ABC",
"color": "Black",
"material": "Rubber"
}
]
JS:
$.ajax({
url: "https://query.yahooapis.com/v1/public/yql?q=select * from json where url ="http://goo.gl/aZgYDB"amp;format=jsonamp;diagnostics=trueamp;callback=",
success: function (data) {
var item_html="";
$(data.query.results.json).each(function(key, value) {
$.each(value,function(key, value){
item_html = '<h3>' key ' - ' value '</h3>';
});
});
$('#area').append(item_html);
}
});
Комментарии:
1.относительно просто сделать, используя условное
if
developer.mozilla.org/en-US/docs/Web/JavaScript/Reference /…
Ответ №1:
Вы можете проверить значение ключа и добавить что-то следующим образом
$.each(value, function (key, value) {
item_html = '<h3>' key ' - ' value '</h3>';
if(key=='link')
item_html = '<h3>something</h3>';
if(key=='color')
item_html = '<h3>something else</h3>';
});
Ответ №2:
Я думаю, вы просто ищете простое if
утверждение:
if(value == "google.com"){
item_html = '<h3>Text</h3>';
}
if(value == "Black" amp;amp; key == "color"){
item_html = '<h3>SecondText</h3>';
}
Вы также можете проверить наличие ключа и значения (второй оператор if), если хотите быть уверены.
Рабочая скрипка