2010-07-08 3 views
0

Je voudrais griser (désactiver) la (les) ligne (s) précédente (s), chaque fois que j'en ajoute une nouvelle. En ce moment je ne pouvais que désactiver le premier. Merci d'avance. Voici ce que j'ai pu faire jusqu'à présent:Désactiver (griser) la (les) ligne (s) précédente (s)

<head> 
<SCRIPTTYPE="text/javascript"> 
varcount="1"; 
functionaddRow(in_tbl_name){ 
vartbody=document.getElementById(in_tbl_name).getElementsByTagName("TBODY")[0]; 
varrow=document.createElement("TR"); 
vartd1=document.createElement("TD") 
varstrHtml1="<SELECTNAME=\"sel_1\"><optionvalue=\"a\">a<optionvalue=\"b\">b<optionvalue=\"c\">c<optionvalue=\"d\">d</SELECT>"; 
td1.innerHTML=strHtml1.replace(/!count!/g,count); 
row.appendChild(td1); 
count=parseInt(count)+1; 
tbody.appendChild(row); 
myform.sel1.disabled=true; 
} 
functiondelRow(){ 
varcurrent=window.event.srcElement; 
while((current=current.parentElement)&&current.tagName!="TR"); 
current.parentElement.removeChild(current); 
} 
</SCRIPT> 
</head> 
<body> 
<div> 
<formaction="#"method="POST"name="myform"> 
<divstyle=""> 
<TABLEID="mytable"name="mytable"border="1"STYLE="border-width:1pxorangedashed;background-color:#F0E68C;table-row-width:2;"> 
<TR> 
<TD> 
<selectsize="1"name="sel1"> 
<optionvalue="a">a</option> 
<optionvalue="b">b</option> 
<optionvalue="c">c</option> 
<optionvalue="d">d</option> 
</select> 
</TD> 
</TR> 
</TABLE> 
</div> 
<div> 
<INPUTTYPE="Button"onClick="addRow('mytable')"VALUE="Add"> 
</div> 
</form> 
</div> 
</body> 
+1

Qu'est-il arrivé aux espaces dans votre code? – SLaks

+0

réponse: utilisez jQuery. –

Répondre

1

Appliquez un CSS sur cette ligne. Row n'a aucun concept d'être "désactivé" - ce sont simplement des lignes. Comment ils apparaissent est piloté par CSS. Mise à jour: Si vous souhaitez désactiver les entrées de formulaire dans la ligne, recherchez simplement cet élément dans la ligne précédente, en utilisant par exemple. jQuery, ou manuellement (en utilisant des méthodes DOM) si le chemin DOM du SELECT est toujours le même.

+0

Merci beaucoup. Comment puis-je écrire le même script sans avoir à taper les options de sélection dans le JavaScript? Parce que ma liste d'options est très longue: