2011-11-01 60 views
0

我有一组代码,它将display:none css类添加到我的页面上的某个元素。虽然这是有效的,但我需要代码在显示输入值时将样式应用于元素。现在它在创建输入后再应用样式,并再次单击该按钮。我需要它在创建那个输入字段时消失。如何在实际达到限制时执行代码

任何想法?

<script> 
>   var counter = 1; 
>   var limit = 15; 
>   function addInput(divName){ 
> >    if (counter == 15) {  
>     var el = document.getElementById('destroy');  
>     el.style.display = "none"; 
> >    } 
> >    else { 
> >    var newdiv = document.createElement('div'); 
> >    newdiv.innerHTML = "<span id=''>Serial Number " + (counter + 1) + " : <input type='text' name='myInputs[]'/></span>"; 
> >    document.getElementById(divName).appendChild(newdiv); 
> >    counter++; 
> >    } 
> > 
> > } </script> 

回答

1

我猜你正在努力做到这一点:

var counter = 1; 
var limit = 15; 
function addInput(divName){ 
    if (counter < limit) {  
    var newdiv = document.createElement('div'); 
    newdiv.innerHTML = "<span id=''>Serial Number " + (counter + 1) + " : <input type='text' name='myInputs[]'/></span>"; 
    document.getElementById(divName).appendChild(newdiv); 
    counter++; 
    if(counter === limit){ 
     var el = document.getElementById('destroy');  
     el.style.display = "none"; 
    } 
    } 
} 
+0

这正是它。在Javascript中,我是一个小菜鸟。尽管我正在慢慢学习并感谢你,我现在看到它是如何工作的! :) –

+0

我不知道你可以嵌套如果这样的陈述。谢谢。 –

0

一个简单的重排应该做的伎俩:

function addInput(divName){ 
    var newdiv = document.createElement('div'); 
    newdiv.innerHTML = "<span id=''>Serial Number " + (counter + 1) + " : <input type='text' name='myInputs[]'/></span>"; 
    document.getElementById(divName).appendChild(newdiv); 
    counter++; 
    if (counter == 15) {  
     var el = document.getElementById('destroy');  
     el.style.display = "none"; 
    } 
} 
相关问题