怎样用JS为服务器控件赋值

怎样用JS为服务器控件赋值,第1张

//1、JS脚本为服务器控件赋值

语法:document.getElementById('<%=服务器控件名.ClientID%>')

document.getElementById('<%=TextBox2.ClientID%>‘).value= “aaaaa”

<anthem:TextBox ID= "TextBox2" runat= "server" Text= "bbbbb" ></anthem:TextBox>//这个是anthem的控件,跟asp.Net ajax框架的控件一样.

//2、JS脚本为服务器中用户控件中的控件赋值

语法:document.getElementById("<%=服务器控件名.ClientID%>"+"_用户控件中控件名")

document.getElementById( "<%=UserInfoControl1.ClientID%>"+"_txtBAname").value= “aaaaa”

页面使用的用户控件: <uc1:UserInfoControl ID= "UserInfoControl1" runat= "server" />

用户控件代码:

<anthem:TextBox ID="txtBAname" runat="server" Width="64px" CssClass="lankuang" ></anthem:TextBox>

如果js为服务器控件Lable赋值的话,语法为:

document.getElementById("<%=CaseControl1.ClientID%>"+ "_lblZhusu").innerHTML= "aaaaaaa"

但是由于label映射到客户端是Div标签,所以后台取的还是原来的值

是文本框 <input type="button">这种么 如果是的话 直接$("input[type=button]").val("你想写啥就写啥") 就能完成赋值了

下面是一个例子

http://www.w3school.com.cn/tiy/t.asp?f=html_input_disabled

主要来说就是Enable="false"时候,不会回传,你把上面的disabled="disabled"去掉后再次运行就会传值给服务器了。

这是Textbox 微软去Text的源码,对于TextBox来说,它的值保存在ViewState对象里面,而ViewState是一个跟踪对象状态的键值对

/// <devdoc>

///<para>Gets

/// or sets the text content of the text box.</para>

/// </devdoc>

[

Localizable(true),

Bindable(true, BindingDirection.TwoWay),

WebCategory("Appearance"),

DefaultValue(""),

WebSysDescription(SR.TextBox_Text),

PersistenceMode(PersistenceMode.EncodedInnerDefaultProperty),

Editor("System.ComponentModel.Design.MultilineStringEditor," + AssemblyRef.SystemDesign, typeof(UITypeEditor))

]

public virtual string Text {

get {

string s = (string)ViewState["Text"]

return((s == null) ? String.Empty : s)

}

set {

ViewState["Text"] = value

}

}


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/308220.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-28
下一篇2023-04-28

发表评论

登录后才能评论

评论列表(0条)

    保存