2011-02-17 1 views
0

J'ai quelques problèmes dans mon code ... J'utilise html et jquery .. Je veux alerter la valeur de idPredefineDetail qui a été ajouté avant ... voici mon code:Comment faire pour obtenir la valeur de Row Table Ajouté

<table id="tablePreDefineDetail"> 
<tr id="rowPreDefineDetail"><td><input type="checkbox" name="chkPredefineDetail" ><input type="hidden" name="idPredefineDetail" value="1"></td><td width="5"><input type="text" name="txtCodePredefineDetail" value="ab" size="10"></td><td><input type="text" name="txtDescriptionPredefineDetail" id="txtdesk" size="50"></td><td><a href="#"><button class="upPredefine"></button></a><a href="#"><button class="downPredefine"></button></a><a href="#"><button class="removeStdInsBtn"></button></a></td></tr> 
<tr id="rowPreDefineDetail"><td><input type="checkbox" name="chkPredefineDetail" ><input type="hidden" name="idPredefineDetail" value="2"></td><td width="5"><input type="text" name="txtCodePredefineDetail" value="ac" size="10"></td><td><input type="text" name="txtDescriptionPredefineDetail" id="txtdesk" size="50"></td><td><a href="#"><button class="upPredefine"></button></a><a href="#"><button class="downPredefine"></button></a><a href="#"><button class="removeStdInsBtn"></button></a></td></tr> 
</table> 

Quand je bouton cliqué supprimer removeStdInsBtn .. Je suis en utilisant le code ci-dessous:

$('#tablePreDefineDetail tr button.removeStdInsBtn').click(function(e){ 
    var obj=$(this); 
    e.preventDefault(); 
    $("#dialog-confirm").dialog({ 
      buttons : { 
      "Confirm" : function() { 

       var idPredefineDetail=$(this).parent().parent().children("input[name=idPredefineDetail]").val(); 
       alert(idPredefineDetail); 
       $(this).dialog("close"); 
      }, 
      "Cancel" : function() { 
       $(this).dialog("close"); 
      } 
      } 
     }); 

     $('#dialog-confirm').dialog('open'); 
}); 

quelqu'un me aider ??

+0

Ne pas avoir d'ID en double ... changer 'id =" rowPreDefineDetail "' 'class =" rowPreDefineDetail "'. –

+0

Je ferais mieux de nous dire quel est le problème. – wliao

+0

@walio si j'alerte la valeur de idPredefineDetail .. le résultat montré indéfini ... je ne sais pas comment l'obtenir .. – Sthepen

Répondre

0

Vous pouvez utiliser un combo de plus proche et trouver. Essayez ceci:

$('#tablePreDefineDetail tr button.removeStdInsBtn').click(function(e){ 
    var obj=$(this); 
    e.preventDefault(); 
    $("#dialog-confirm").dialog({ 
      buttons : { 
      "Confirm" : function() { 

       var idPredefineDetail=obj.closest("tr").find("input[name=idPredefineDetail]").val(); 
       alert(idPredefineDetail); 
       $(this).dialog("close"); 
      }, 
      "Cancel" : function() { 
       $(this).dialog("close"); 
      } 
      } 
     }); 

     $('#dialog-confirm').dialog('open'); 
}); 
+0

le résultat est un .. – Sthepen

+0

Mise à jour du code. Essayez-le maintenant ... – Chandu

+0

merci bro .. ça fonctionne ... où est l'erreur? – Sthepen

0

Vous n'avez pas publié tous vos fichiers html, mais en guise de première approximation, je vous suggère d'utiliser closest pour parcourir l'arborescence DOM.

var idPredefineDetail=$(this).closest("#dialog-confirm").children("input[name=idPredefineDetail]").val(); 
+0

j'ai essayé ceci .. mais le résultat encore indéfini bro – Sthepen

0

Je crois que le $ (ce) est en fait de pointer # dialogue-confirmation. Vous devez utiliser la variable obj que vous avez définie au début de la fonction de rappel de clic. Vous n'êtes pas non plus retourné assez loin, vous avez besoin d'un autre appel parent().

var idPredefineDetail=obj.parent().parent().parent().children("input[name=idPredefineDetail]").val(); 
alert(idPredefineDetail); 
$(this).dialog("close"); 
0

bien ici, je veux modifier le Mentionnés ci-dessous le code qui a été initialement publié par Cybernate

$ ('# tablePreDefineDetail tr button.removeStdInsBtn'). Cliquez sur (function (e) {var obj = $ (this);

e.preventDefault(); 
$("#dialog-confirm").dialog({ 
     buttons : { 
     "Confirm" : function() { 
      var idPredefineDetail=obj.attr("id"); 
      alert(idPredefineDetail); 
      $(this).dialog("close"); 
     }, 
     "Cancel" : function() { 

      $(this).dialog("close"); 
     } 

     } 

    }); 

    $('#dialog-confirm').dialog('open'); 

}); Par exemple, j'ai un lien hypertexte comme celui-ci.

ClickMe

quand je clique sur le lien de la valeur i accès est id = 'clickit' comme obj.attr ("id"); est utilisé. afin que nous puissions placer une valeur requise dans id, ou dans le nom ou dans une autre propriété de balise et plus tard nous pouvons facilement y accéder ...

Questions connexes