如何使代码在实际达到限制时执行

How to make the code execute when the limit is actually reached

本文关键字:执行 何使 代码      更新时间:2023-09-26

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

任何想法?

 <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>

我猜你正在尝试这样做:

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";
    }
  }
}

简单地重新排列一下就可以了:

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";
    }
}