Я использую jersey 2.0 с читателями и авторами сообщений. У меня был тип возвращаемого метода как конкретный объект, который также использовался в реализации автора сообщения сообщения, и я возвращал то же самое pojo, SkuListDTO. @GET @Consumes ({"application / xml", "application / json"}) @Produces ({"application / xml", "application / json"}) @Path ("/ skuResync")
public SkuResultListDTO getSkuData()
....
return SkuResultListDTO;
все, что я изменил, это то, что я оставил выполнение записи самостоятельно, и он все еще работал.
public Response getSkuData()
...
return Response.status(Response.Status.FORBIDDEN).entity(dfCoreResultListDTO).build();
var i = 1;
var option1 = 'test';
var option2 = 'test2';
var number = eval("option"+parseInt(i+1, 10));
console.log(number);
Вот он работает ... https://jsfiddle.net/ucp9jgnh/1/ Должен сделать трюк ... Не лучший способ это сделать, но это будет по крайней мере, работа
В этом примере опция2 является ответом ...
parseInt (i + 1, 10) ... эта часть будет убедиться, что это i (ваш цикл) +1 в математическом формате. Затем он добавляет это в текст «option», а eval () затем позволяет JS рассматривать его как переменную вместо строки.
Если вы измените var i = 0, вместо него будет выводиться «test» вместо «test2» из-за математики.
Вот что вы делали бы внутри своей петли ... Должно работать как есть:
var appendedThing = eval("option"+parseInt(i+1, 10));
item.appendChild(appendedThing);
Одним из вариантов было бы создание массива таких параметров: https://codepen.io/anon/pen/jpbKBx
//Javascript
function myFunction () {
//get value of selected <option> in a separate <select> drop down
var type = document.getElementById('_first').value;
//get the second <select>
var item = document.getElementById('_second');
//Clear child nodes from dynamic <select>
while (item.hasChildNodes()) {
item.removeChild(item.lastChild);
}
//set count variable to know how many <options> there should be in second <select> drop down
var count;
var options = [];
//assess value
switch (type) {
case '1': //First case
var option1 = document.createElement('option');
option1.text = 'SomeText1';
options.push(option1);
break;
case '2': //Second case
var option1 = document.createElement('option');
option1.text = 'SomeText2';
options.push(option1);
var option2 = document.createElement('option');
option2.text = 'SomeText3';
options.push(option2);
break;
case '3': //Third case
var option1 = document.createElement('option');
option1.text = 'SomeText4';
options.push(option1);
var option2 = document.createElement('option');
option2.text = 'SomeText5';
options.push(option2);
var option3 = document.createElement('option');
option3.text = 'SomeText6';
options.push(option3);
break;
}
//populate select menu
for (var i = 0; i < options.length; i++) {
//how can I do this part?
item.appendChild((options[i]));
}
}