2010-11-18 20 views
0

Ce code écrit tel quel dans une page simple génère un [objet] selon mes besoins.et [object HTMLInputElement] javascript

function jsFunction(){ 
var arr=document.all("camp"); 
alert(arr); 
} 

HTML:

<input name="ctl00$MainContent$_basicDataControl$_winProbabilityPopUpControl$_winProbabilityControl$_groupWinProbabilityQuestions$ctl00$_groupPercentage" type="text" id="camp" class="readonly2" readonly="readonly"/> 
<input name="ctl00$MainContent$_basicDataControl$_winProbabilityPopUpControl$_winProbabilityControl$_groupWinProbabilityQuestions$ctl01$_groupPercentage" type="text" id="camp" class="readonly2" readonly="readonly"/> 
<input type="button" value="apasa aici!" onClick="jsFunction()"> 

Dans une autre page ce code écrit avec autres entrées et inclus dans une forme retourne un [object HTMLInputElement] et je ne peux pas analyser le tableau. Quel pourrait être le problème?

+3

vous ne pouvez pas définir un identifiant deux fois ou plus dans la même page –

+0

J'ai essayé aussi name = "camp" au lieu de id = "camp" et j'ai eu le même problème. J'ai eu un objet dans la page simple et l'objet HTMLInputElement dans la page principale. – MaPa

+1

Comment obtenez-vous des ID comme ça? Si ces commandes sont rendues comme nommées, vos identifiants devraient être longs ... ou êtes-vous sur .Net 4 et écrasant la génération d'ID? –

Répondre

0

comme spécifié dans mon commentaire ci-dessus, un identifiant doit être unique dans la page. donc vous devriez récupérer une collection d'entrée à la place (par exemple document.getElementsByTagName('input') et exclure le dernier élément (est le soumettre))

ou jQuery $('input[type=text]')

évidemment vous devez appeler cette fonction après que les éléments sont créés