收录日期:2020/10/23 09:59:31 时间:2016/07/04 16:42:49 标签:ASP.NET
在没有可能用JS 给TextBox 赋值

document.all.rtshqk2.value="123"; //这样是行不通的

var textBox=document.getElementById('rtshqk2');
textBox.value="123";
<script   language= "javascript ">
var   rtshqk2= "1111 ";
alert(rtshqk2);
var   txt=document.all.item( 'rtshqk2');
txt.value=rtshqk2;
</script> 

<INPUT   type= "text "   name= "rtshqk2"   id= "rtshqk2">
注意要加上   id= "rtshqk2" 

document.form1.city.value=city;



二个朋友可能误会我的意思了,说明白点就是如何用JS给.net的控件TextBox赋值.


aspx页面代码:
<asp:TextBox ID="rtshqk2" runat="server" Width="192px"></asp:TextBox>
从表面来看貌视不可能,哈哈
引用 4 楼 yyixin 的回复:
从表面来看貌视不可能,哈哈


....楼主怎么这么晕呢,我们写的就是阿!
.net控件也是html控件阿,只是稍微封装了一下。

上面的代码是可以的,请lz自己试一下。
引用 1 楼 ZHFIFA 的回复:
JScript code
var textBox=document.getElementById('rtshqk2');
textBox.value="123";


<asp:TextBox ID="rtshqk2" runat="server" Width="192px"> </asp:TextBox>

这个控件是在服务器端运行的,用客户端的JS去执行,会行吗?

等待lz的结果
不行.
楼主你昏厥了?
先确定谁来给赋值!
用js赋值就是客户端赋值,展现在客户端的时候那里还有服务器控件? 都是html代码。
你如果你要在运行过程中赋值(非人为操作)用C#哪里处理不到?
如果你想在服务器端和客户端同时对控件编程,可以使用HTML控件,就像这样:
<input id="abc" runat=server />  就是加个runat="server"
服务器端可以直接按ID引用,如:abc.Value="123"
但是客户端脚本不能直接按ID引用,需这样:
var s=document.getElementById('<%=abc.ClientID %>');
s.value='567';
因为HTML控件由asp.net封装,客户端ID被转换,可由ClientID 取得

不知对你有所帮助否
我估计楼主可能是用到了masterpage之类的技术,导致你指定的asp.net控件的id在客户端发生了变化,如果是这样的话,至少有如下的方法:
1).net在转换id时是有一定规律的,找到这个规律自然在客户端可以直接操作了;
2)VS提供的clientID有时是无效的,你可使用第三方的控件,这些控件一般都提供了方便的客户端操作方式,如ComponentOne套件
太有可能了

document.getElementById(id).value="123";
当然可以了。
textbox,在页面上看到的时候,已经是 input了,往input给值就OK
顶各位的啊 楼主要try 一下啊   
document.getElementById('<%=rtshqk2.ClientID %>'); 
引用 13 楼 oec2003 的回复:
太有可能了 

document.getElementById(id).value="123";
eg.

<form id="form_1" runat="server">
                                  <div>
                                            <asp:TextBox id="rtshqk2" runat="server"></TextBox>
                                  </div>
</form>

<script type="text/javascript">
document.form_1.rtshqk2.value = "你要赋予的值。。。"; //你可以重新写成方法,例如一个点击事件去赋值
</script>
TextBox  可以用JS给它赋值  但是在CS文件获取其值是获取不到的 只有用一个隐藏控件来保存其值 TextBox 只是一个显示作用  CS 去获取隐藏控件的值  最好 这样写 document.getElementById('<%=rtshqk2.ClientID %>'); 
把每个服务器控件都去取其ClientID 
引用 12 楼 hxb 的回复:
我估计楼主可能是用到了masterpage之类的技术,导致你指定的asp.net控件的id在客户端发生了变化,如果是这样的话,至少有如下的方法: 
1).net在转换id时是有一定规律的,找到这个规律自然在客户端可以直接操作了; 
2)VS提供的clientID有时是无效的,你可使用第三方的控件,这些控件一般都提供了方便的客户端操作方式,如ComponentOne套件

完全正解.


现在想想也真够晕的,怎么就没有想到看看生成的代码呢.
现已用第一种方法解决.

谢谢大家!

rtshqk2 to
ctl00_ContentPlaceHolder1_rtshqk2

高分求perl写的网络监控程序一套(带源码) mysql存诸过程 三个尖括号表示什么啊? 修改hashtable的value值的问题 面试通知 (Java开发工程师) 两个表相同字段的统计 大表拆分小表,update时怎么办?????? java源文件如何变成exe可执行文件! VB 16进制转成10进制的问题 字符串比较大小问题,那里出错了? 每天一贴 ant编译问题 判断edit输入是否完成 热啊 .net源代码丢失,有办法恢复吗? C++语法问题 如果我要考虑以后移植到linux我选择什么I/O模型 为什么弹不出选择文件路径对话框? tomcat 安装到JVM就卡住不动,也不报错 请问这里应该怎么写 关于DM9000AE的eboot驱动(wince) 可用分跟钱一样,花着容易挣着难啊。。。 大家看看这个木马怎么写? ISAPI模式的webservice调用ISAPI模式的webservice出现的问题 case语句的问题 DLL返回PCHAR问题? 关于undefined reference to 问题 哪里有PICBASIC相关资料俄~ 08年跳槽 跳向何方? 面向windows CE的vb.net程序,如何取得控件名称呢?高分!