如何使用jquery为按钮id添加值

时间:2015-03-06 06:18:18

标签: jquery asp.net

在页面中,它动态添加按钮控件。按钮名称是' btn'。按下' btn'按钮动态生成' btn1' btn2' ,' btn3' ..等 例如,如果我得到的计数器值是3,那么如何用按钮(btn3)添加计数器值。我尝试了以下代码:

function AddRow(x){

         var counter = x;
          debugger;
          counter++;
          var btncount=x-1;
          var str='<div class="clsDy '+ counter +'"><label style="padding-left: 77px;"><%=GetGlobalResourceObject("ResLanguage", "Width") + "*"%>   </label>' +
                  '<input type="text" style="width: 75px; margin-left: 40px;" TextMode="SingleLine" class="txtBox param"  placeholder="cm" onchange="fnOnUpdateValidatorsNew()"  name="textbox' + counter +
                  '" id="txtWidth' + counter + '" value="" >' 

                  + '<label style="margin-left: 20px;"><%=GetGlobalResourceObject("ResLanguage", "Height") + "*"%> </label>' +
                  '<input type="text" style="width: 75px; margin-left: 44px; " name="textbox' + counter +
                  '" id="txtHeight' + counter + '"  placeholder="cm" value="" class="txtBox param" onchange="fnOnUpdateValidatorsNew()" >' 

                  + '<label style="margin-left: 24px;"><%=GetGlobalResourceObject("ResLanguage", "Lenght") + "*"%>  </label>' +
                  '<input type="text" style="width: 75px;margin-left: 40px;" placeholder="cm" TextMode="SingleLine" name="textbox' + counter +
                  '" id="txtLength' + counter + '" value="" class="txtBox param" >' 

                  + '<label style="margin-left: 24px; clear: both"><%=GetGlobalResourceObject("ResLanguage", "Weight") + "*"%> </label>' +
                  '<input type="text" TextMode="SingleLine" style="width: 75px;margin-left: 38px;"  name="textbox' + counter +
                  '" id="txtWeight' + counter + '" value="" class="txtBox param" placeholder="kg" onchange="fnOnUpdateValidatorsNew()"> <input id="btndelete('+counter+')" type="button" class="btnNew"  style ="width:40px" onclick = "Clear('+counter+')" value="-" /><input id="btnAdd('+counter+')" type="button" class="btnNew"  style ="width: 40px; margin-left: 9px;" onclick = "AddRow('+counter+')" value="+" /></div> ';
                    $("#TextBoxesGroup").append(str);
             counter++;

             //tesy
             if($('#btnAdd + counter +'))
              $('#btnAdd +btncount +').hide();
             }
        }

请参阅//测试线。

 //tesy
                 if($('#btnAdd + counter +'))
                  $('#btnAdd +btncount +').hide();
                 }

我想用btnAdd添加计数器值。
例如。如果计数器值为3.

 if($('#btnAdd3'))
              $('#btnAdd2').hide();
             }

2 个答案:

答案 0 :(得分:0)

试试这个: -

if($('#btn' + counter))
{
   //Your code goes here
}

DEMO

答案 1 :(得分:0)

一些担忧......

  1. 您的点票可能会被取消,因为您有两次counter++
  2. 如果您使用if的唯一原因是检查相关元素是否存在,则可以完全避免使用if语句。
  3. 如果您必须使用if语句(在修正计数后),这是正确的方法:
  4. if( $('#btnAdd' + counter).length )
        $('#btnAdd' + btncount).hide();
    }
    //or ... shorthand
    !$('#btnAdd' + counter).length || $('#btnAdd' + btncount).hide();
    

    在不修复计数的情况下,这是一个示例迭代:

    if( $('#btnAdd4').length )
        $('#btnAdd2').hide();
    }
    

    您可能需要的只是:

    $('#btnAdd' + btncount).hide();
    

    最重要的是

    .../><input id="btnAdd('+counter+')" type="button" ...
    

    应改为:

    /><input id="btnAdd' + counter + '" type="button"