/ / Показвайте стойностите на jquery в отделни полета за въвеждане - jquery, html

Показване на стойностите на jquery в отделни полета за въвеждане - jquery, html

Опитвам се да покажа стойността на #response от кода по-долу във полетата за въвеждане. Ето кода.

<script>
$(document).ready(function() {

$("#productID").change(function() {
//alert($("#productID option:selected").val());
var pId = $("#productID").val();

$.get("updateProduct", {
productID: pId.trim()    //using trim to get rid of any extra invisible character from pId
},
function(responseText) {
$("#response").val(responseText);

});

});
});
</script>

$ ( "# Отговор").Val (responseText); -> Ако това съдържа две стойности, има ли начин да извлечете тези стойности отделно? това, което бих искал да направя, е да показва стойности поотделно в три отделни полета за въвеждане.

 $("#response").val(responseText);

Това може да съдържа стойности като, ПродуктОписание, Коментари към продукта, Тип на продукта. Тези стойности идват от сервлета. След получаване на тези стойности те ще бъдат показани в три отделни полета за въвеждане.

В момента, ако направя следното,

<input type="text" id="response"/>

Това ще покаже и трите стойности в едно и също поле за въвеждане. Някаква идея как мога да покажа три стойности в три отделни полета за въвеждане? Благодаря предварително

входът идва от сървлет страница. Вътре в "doGet" имам следния код.

 for (Product8339384 ps1 : ps) {
comments = ps1.getComments();
description =ps1.getDescription();
}
out.println(comments);
out.println(description);

изход: Изходът трябва да бъде показан в двете отделни полета за въвеждане. които ще показват коментари и описание. и двете стойности, получени от БД.

Отговори:

1 за отговор № 1

Предлагам ви да прегледате резултата (ResponsText) и да разделите данните (надяваме се, че имате сепаратор там?) В бивш. Javascript Array [].

Когато имате начин да знаете колко елемента има в масива, който можете да използвате. динамично вмъквайте входни елементи, използвайки JQuery така:

$(InputsWrapper).append("<div><input type="text" name="mytext[]" id="field_"+     FieldCount +"" value="Text "+ FieldCount +""/></div>");

По този начин можете да използвате всеки елемент, който получавате от своя масив и да вмъкнете нов елемент на въвеждане, и да му присвоите данните вътре в $ .each (JQuery) или for-loop (Javascript).

Можете също да прегледате резултата си по този начин, ако не искате временния масив:

$.each(responseText.split(","), function(index, value) {
alert(index + ": " + value);
});

.... при положение, че имате на какво да се разделите :)

Надявам се това да ви даде нещо повече за работа ...


1 за отговор № 2

Ето решението. Кодът Jquery е вътре в заглавката.

 $(document).ready(function() {
$("#productID").change(function() {
var pId = $("#productID").val();
$.get("updateProduct", {
productID: pId.trim()    //using trim to get rid of any extra invisible character from pId
},
function(responseText) {
$.each(responseText.split(","), function(index, value) {
if(index === 0){
$("#comments").val(value);
}
else if(index === 1){
$("#description").val(value);
}
});

});
});
});

След това вътре в html тялото.

<input type="text" id="comments" name="id"/>
<input type="text" id="description" name="id"/>