繁体   English   中英

如何将onclientclick添加到在代码背后动态创建的控件中?

[英]How to add onclientclick to a control that is dynamically created in the codebehind?

我有一个在后台代码中动态创建的checkbox 我还需要添加一个textbox ,如果该checkbox被选中,则可见。 我知道我可以用

checkBox.Attributes.Add("onclick", "return func();")

但是我的问题是,由于我的textbox也是在后台代码中动态创建的,我该如何编写func()

更新:感谢您的回答。 但是,如果有什么方法不使用JQuery? 另外,我的复选框ID是在后台代码中动态创建的。

您可以通过传递text box的ID来做到这一点,如下所示

TextBox tx=new TextBox();
tx.Id="abc";
checkBox.Attributes.Add("onclick", "return func('"+checkBox.ClientId+"','"+tx.ClientId+"');");

您可以在Java脚本函数中获取ID。

function fun(checkboxId,textboxId)
{
    var remember= document.getElementById('checkboxId');
    if (remember.checked){
        document.getElementById(textboxId).disabled="disabled";
    }
    else{
         document.getElementById(textboxId).disabled="";
    } 
}

看看这个是否对您有帮助..我用过jQuery

            $('.lettertyp').attr('checked', false);
            // Check current checkbox
            $(this).attr('checked', true);
            // Find the Sibling of the TextBox and SHow it
            $(this).parent().parent().find('input[type=text]').show();

的jsfiddle

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM