2017-08-19 1 views
0

J'ai une boucle de sélection qui insère une boucle en fonction du nombre d'emprises. Mon tag de sélection aura id selID0, selID1, selID2 ... Je souhaite appeler et ajax fonction pour vérifier quelle étiquette n'est pas sélectionnée lorsque vous cliquez sur le bouton soumettre.Remplir une chaîne de données dans Ajax avec la boucle For

J'ai essayé de construire la chaîne de données dans la fonction Ajax en utilisant une boucle for. Je ne suis pas sûr comment construire la chaîne ou est-il un autre pour insérer la chaîne? S'il vous plaît, aidez, merci.

do while i < Cint(sROW) 

    response.write "<tr>" 
    response.write "<td>" 
    response.write " <select class='form-control' id='selID" & i & "' name='selID" & i & "'>" 
    response.write "  <option value=''>Select</option>" 
    response.write "  <option value='a'>a</option>" 
    response.write "  <option value='b'>b</option>" 
    response.write "  <option value='c'>c</option>" 
    response.write "  <option value='d'>d</option>" 
    response.write " </select>" 
    response.write "</td>" 
    response.write "</tr>" 
    i=i+1 
loop 

La fonction Ajax

function checkselect() { 

var url_to = 'ax_postcheckselect.asp'; 
For (i = 0, i< <%=sROW %>, i++) 
{ 
    var str = """selID""" + i + ":$(""#selID" + i + """).val()," 
    var kae = kae + str 
}; 

    $.ajax({ 
     url  : url_to, 
     type : 'POST', 
     data : { "txtRow":$("#txtRow").val(), 
      kae 
      }, 

Fondamentalement, je tiens à remplir la partie de données à

 data : { "txtRow":$("#txtRow").val(), 
      "selID0":$("#selID0").val(), 
      "selID1":$("#selID1").val(), 
      "selID2":$("#selID2").val(), 
      "selID3":$("#selID3").val(), 

       and so on depending on how many sROWs.  
      }, 

S'il vous plaît aider.

+0

Pourquoi ne pas utiliser $ ('form'). serialze() et envoyer TOUTES les données de formulaire? –

+0

Salut Josh, merci pour votre réponse, pouvez-vous me montrer une idée approximative comment utiliser $ ('form'). Serialze(), votre aide est la plus appréciée. –

Répondre

0

sûr, pas de problème :)

$('form').serialize() prendra tous les éléments sous une forme et essentiellement sérialisation, ce qui signifie que vous ne devez pas spécifier vos données de formulaire individuellement (ex: données: {frmElement: val, frmElement2: val2, etc ...)

function checkselect() { 

var url_to = 'ax_postcheckselect.asp'; 
For (i = 0, i< <%=sROW %>, i++) 
{ 
    var str = """selID""" + i + ":$(""#selID" + i + """).val()," 
    var kae = kae + str 
}; 

$.ajax({ 
    url  : url_to, 
    type : 'POST', 
    data : $('form').serialize(), 
     kae 
     },