2014-11-11 2 views
0

Я использую JQuery, чтобы найти все отмеченные элементы в форме HTML и вернуть предложение, включая отмеченные элементы. У меня структура предложения вниз, но у меня есть ментальный блок, определяющий, как добавить пунктуацию к предложению, например: «Вы выбрали« item1 », Item2» и «Item3». Пожалуйста, нажмите каждую ссылку, чтобы узнать больше.»Добавление пунктуации в результаты jquery

Как я могу добавить запятую между каждым элементом, а также добавить„и“перед только последний?

Я включил небольшой отрезала моего JQuery, .!, если мне нужно, чтобы показать больше я могу Спасибо

$("#list").append("You have indicated an interest in "); 
    $.each(linkValues, function(i, val) { 
     $("#list").append("<a href='" + linkURL[i] + "'>" + val + "</a> "); 
    }); 
    $("#list").append("Please click on the links to learn more about these resources."); 
    break; 
} 

ответ

1

Добавление запятой легко:

$.each(linkValues, function(i, val) { 
    $("#list").append("<a href='" + linkURL[i] + "'>" + val + "</a>, "); 
//                ^^^ 
}); 

Как это не показывать вверх после того, как последний немного сложнее

.

Вы можете обнаружить, если это последний один, проверяя i и linkValues.length:

i == linkValues.length - 1 

Тогда мы можем использовать тройной оператор только добавить вещи, когда он последний:

$.each(linkValues, function(i, val) { 
    var isLast = i == linkValues.length - 1; 
    $("#list").append((isLast ? "and " : "") + "<a href='" + linkURL[i] + "'>" + val + "</a>" + (isLast ? ", " : " ")); 
}); 
+0

Спасибо ! что отлично работало. Единственное, что я изменил, это (isLast? »,«: »)); быть (isLast? ".": ",")); и это было место. Еще раз спасибо! – ColonelStroganoff

Смежные вопросы