Autor | Zpráva | ||
---|---|---|---|
gerix Profil |
#1 · Zasláno: 24. 3. 2011, 09:38:20
Ahoj, chtěl bych se zeptat, jakým způsobem napíšu podmínku do tohoto scriptu, aby se mi nevypsalo třeba ID 3.
Je to script na přidávání polí ve formuláři. Je omezený na 1 až 5 (ID) a maximální ID je nejvíce 5 Chtěl bych to omezit nějakou jednoduchou proměnnou, aby mi to třeba navypsalo ID 3,4 (dle potřeby) šlo by to nějak? díky za odpovědi... <script> addEvent=function() { if(addEvent.elmCount >= addEvent.maxNodes) { return false; } addEvent.elmCount++; var nejmensiCislo=1; for(var i=1;i<=addEvent.maxNodes;i++) if(!document.getElementById("my"+i+"Div")){nejmensiCislo=i;break} var ni = document.getElementById('myDiv'); var numi = document.getElementById('theValue'); var num = (document.getElementById("theValue").value -1)+ 2; numi.value = num; var divIdName = "my"+nejmensiCislo+"Div"; var newdiv = document.createElement('div'); newdiv.id=divIdName; newdiv.innerHTML = "ID:" + nejmensiCislo + " přidáno! <input type=\"text\"> <a href=\"javascript:;\" onclick=\"removeElement(\'"+divIdName+"\')\">Vymazat pole ID:" + nejmensiCislo + "</a>"; ni.appendChild(newdiv); } addEvent.elmCount = 0; addEvent.maxNodes = 5; removeElement=function(divNum) { var d = document.getElementById('myDiv'); var olddiv = document.getElementById(divNum); d.removeChild(olddiv); addEvent.elmCount--; } </script> <input type="hidden" value="0" id="theValue" /> <p><a href="javascript:;" onclick="addEvent();">Přidat</a></p> <div id="myDiv"> </div> |
||
TomasJ Profil |
#2 · Zasláno: 24. 3. 2011, 13:27:16 · Upravil/a: TomasJ
Formulaci tvého dotazu moc nechápu, zkus to „Chtěl bych to omezit nějakou jednoduchou proměnnou, aby mi to třeba navypsalo ID 3,4 (dle potřeby)“ vysvětlit nějak lépe.
EDIT: Na přidávání formulářových políček jsem si udělal pro vl. potřebu skript: /* Definuji Inputs a maxInputs */ var Inputs = 0; //Aktuálně inputů 0; var maxInputs = 10; //Max 10 inputů /* Vytvoření inputu */ function AddInput() { if(Inputs < maxInputs) { Inputs++; var div=document.createElement('div'); var txt=document.createTextNode('\n'); var setid = Math.round(Math.random()*999999999999999); div.id="row"+setid; div.innerHTML='<input size="50" name="neco[]" type="text">'; div.innerHTML+=' <a href="javascript:void(0);" onclick=\'deleteRow("row'+setid+'");\'>Smazat</a>'; document.getElementById("inputy").appendChild(div); document.getElementById("inputy").appendChild(txt); } else{return alert("Více souborů vložit nemůžete (max. "+maxInputs+" souborů)!");} } /* Zničení inputu */ function deleteRow(id) { if(Inputs>1) { Inputs--; document.getElementById('inputy').removeChild(document.getElementById(id)); } } HTML pak vypadá takto: <body onload="AddInput();"> <div id="inputy"></div> </body> |
||
Časová prodleva: 13 let
|
0