怎么用js把dropdownlist选中值传到textbox中

lhq8922 2010-04-25 02:27:52
如题,还有怎么在服务器控件上用js函数
...全文
711 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
lhq8922 2010-04-25
  • 打赏
  • 举报
回复
谢谢你们,感觉三楼的朋友方法很实用,问题解决了

5楼的朋友方法,不知道为什么没反应
  • 打赏
  • 举报
回复
使用 this.TextBox1.ClientID,是因为我们不能过于相当于地假设客户端id一定是textbox1。稍微复杂你一点,例如放入ascx、放入模板列、放入使用masterpage的页面等等,就会发现ClientID的概念才是持久的。

[Quote=引用 4 楼 camperer 的回复:]
支持3楼。。
另外用js改变服务器控件textbox的值貌似会出问题,如果textbox本身有text属性的话(js不能改变viewstate里保存的text值)
[/Quote]
客户端<input />的value会回填服务器端Text,然后正好因为与ViewState中的旧的值不同而触发TextChanged事件。
wuyq11 2010-04-25
  • 打赏
  • 举报
回复
DropDownList1.Attributes.Add( "onchange","A(this.options[this.selectedIndex].text)");
funcation A(s)
{document.getElementById('<%=TextBox1.ClientID %>').value=s;
}
camperer 2010-04-25
  • 打赏
  • 举报
回复
支持3楼。。
另外用js改变服务器控件textbox的值貌似会出问题,如果textbox本身有text属性的话(js不能改变viewstate里保存的text值)
  • 打赏
  • 举报
回复
这样写:
protected void Page_Load(object sender, EventArgs e)
{
this.DropDownList1.Attributes["onclick"] = "document.getElementById('" +
this.TextBox1.ClientID + "').value=this.value;";
}

asp.net程序本来就是用来动态生成html/javascript的,如果你再只会在html上“写死”javascript那么岂不是白学了asp.net?
初吻给了烟 2010-04-25
  • 打赏
  • 举报
回复
<asp:DropDownList ID="DropDownList1" onchange="txtbox1.value=this.value" runat="server">
</asp:DropDownList>
烟灰洒落键盘 2010-04-25
  • 打赏
  • 举报
回复
服务器控件的onclientclick事件直接指向js函数名就可以了

62,074

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧