2016-11-29 7 views
0

У меня есть более трех текстовых полей. Я хочу отправить эти данные как в коде. Значение «indeks» всегда является последним кликом. Как сохранить индекс?сохранить память более чем на один индекс

 click:function(e) { 

    var item = e.itemElement.index(); 
indeks = item;     
} 
     var field= "";  
    onl: function() { 
      $.ajax({ 
     type: "GET", 
     cache:true, 
     url: MYURL, 
     success: function (msg, result, status, xhr) { 
      var obje = jQuery.parseJSON(msg) 
      var i = 0; 
      field = " "; 
      $('#wrapper *').filter(':input').each(function() { 

       if (txtvalue != "") { 
        if (i) 
         field += " and "; 
        field = field + "[" + obje[indeks]+ "]" $(this).val() + "'";      

        i++; 
       } 

      }); 
       }); 

}, 
+0

попытаться объявить массив вне вашего обработчика успеха. затем просто подталкивайте свои индексы к этому массиву в вашем обработчике успеха. это способ сохранить ваши индексы с щелчком. – bloC

+0

спасибо @bloC, Можете ли вы привести пример PLS –

+0

попробуйте что-то вроде https://jsfiddle.net/Lk2373h2/1/ – bloC

ответ

0

Так как я не был уверен, что если бы я получил свой вопрос прямо, я предпочел комментировать по вашей теме - но теперь, кажется, что мой ответ вам помог, поэтому я решил опубликовать его в качестве фактического ответа:

первый шаг: объявить массив за пределами вашего обработчика успеха
2-й шаг: нажать индекс и значение элемента в этом массиве
3-й шаг: цикл через все записи массива и построить свой «выберите» заявление

Вот ваш отредактированный пример: https://jsfiddle.net/Lk2373h2/1/

 var clickedIndexes = []; 
    click:function(e) { 

    var item = e.itemElement.index(); 
indeks = item;     
} 
    var field= "";  
    onl: function() { 
      $.ajax({ 
    type: "GET", 
    cache:true, 
    url: MYURL, 
    success: function (msg, result, status, xhr) { 
     var obje = jQuery.parseJSON(msg) 
     var i = 0; 
     field = " "; 
     $('#wrapper *').filter(':input').each(function() { 
      $(this).attr('id', i); 
      var txtvalue=$(this).val(); 
       if (i) 
          clickedIndexes.push({ 
           index: indeks, 
           value: $(this).val() 
          }); 
         var selectString = ""; 

         for (var u = 0; u < clickedIndexes.length; u++) { 
          selectString += "[" + obje[clickedIndexes[u].index].ALAN + "]" + "=" + "'" + clickedIndexes[u].value + "'"; 

         } 

         field = selectString; 

         i++; 

     }); 
      }); 

},