asp.net文本框添加BehaviorID

asp.net文本框添加BehaviorID,asp.net,javascript,Asp.net,Javascript,我是否可以为asp.net文本框添加BehaviorID属性,并使用它被java脚本识别 换句话说,我想在asp.net文本框上应用一些java脚本函数,我想让java脚本通过BehaviorID找到asp.net文本框。当然。在代码隐藏中: myTextBox.Attributes.Add("BehaviorID", id.ToString()); 生成的HTML将类似于: <input type="text" BehaviorID="7" id="myTextBox" (...) /

我是否可以为asp.net文本框添加BehaviorID属性,并使用它被java脚本识别


换句话说,我想在asp.net文本框上应用一些java脚本函数,我想让java脚本通过BehaviorID找到asp.net文本框。

当然。在代码隐藏中:

myTextBox.Attributes.Add("BehaviorID", id.ToString());
生成的HTML将类似于:

<input type="text" BehaviorID="7" id="myTextBox" (...) />

当然可以。在代码隐藏中:

myTextBox.Attributes.Add("BehaviorID", id.ToString());
生成的HTML将类似于:

<input type="text" BehaviorID="7" id="myTextBox" (...) />

TextBox.Attributes.Add将正确添加属性,但它们不符合XHTML。为了添加与XHTML兼容的属性,可以使用ClientScript.RegisterExpandoAttribute方法

protected void Page_Load(object sender, EventArgs e)
        {
            if(!Page.IsPostBack)
            {
                BindData(); 
            }

        }

        private void BindData()
        {
           ClientScript.RegisterExpandoAttribute("txtName","BehaviorID",String.Empty);
        }

上述操作将把BehaviorID添加为JavaScript属性,而不是直接将属性添加到TextBox元素中。

TextBox.Attributes.add将正确添加属性,但它们不符合XHTML。为了添加与XHTML兼容的属性,可以使用ClientScript.RegisterExpandoAttribute方法

protected void Page_Load(object sender, EventArgs e)
        {
            if(!Page.IsPostBack)
            {
                BindData(); 
            }

        }

        private void BindData()
        {
           ClientScript.RegisterExpandoAttribute("txtName","BehaviorID",String.Empty);
        }

上述操作将把BehaviorID添加为JavaScript属性,而不是直接将属性添加到TextBox元素中。

@azamsharp:您认为它不符合XHTML,这是不完全正确的。XHTML提供了一种为验证指定自定义DTD的方法。请参阅此处()和此处()的示例。@azamsharp:您认为它不符合XHTML的说法并不完全正确。XHTML提供了一种为验证指定自定义DTD的方法。请参见此处()和此处()的示例。