JS获取服务器端控件ID
很多时候我们需要在JS中对服务器端控件进行一些简单处理,但是这个时候没有必要回发到服务器,让服务器去处理,这个时候就又要用到JS了
那么怎么去获取这个服务器端控件呢?我们知道服务器最终返回到用户界面的其实就是一个HTML文件,所有的服务器控件最后都成为了普通意义上的HTML,必须TEXTBOX会成为一个<input type="text"....>这个时候,服务器端同样会给该HTML标签加上一个ID,以前写JS来获取这个ID 的时候常常就是用的这个ID,但是我们却不能总是用这个办法来获得?比如FORMVIEW控件,最后到了用户这里,就成为了一个TABLE标签,再使用标签模板里面的TEXTBOX啊,DROPDOWNLIST啊,这就麻烦了,ID会是这个样子:**_formview1_****_******,但是这个ID值是确定的吗?这个我不清楚,但是我清楚的一点是:这样做肯定不稳定。
那么采用的方法有两个:
1、使用web控件的ClientID属性在前台JS中对后台控件进行绑定,如下:
function GetValue()
{
var txdat=document.getElementById('<%=txtName.ClientID %>');
}
后面怎么用就不用说了吧?这样获取的服务器端ID才是正确而稳定的。
2、在服务器端注册一个JS脚本,在需要使用这个ID的时候再去注册,原因?页面对此回发到服务器之后,服务器控件的ID可能会发生变化,从而带来不可预知的结果,所以,在需要使用这个控件时向页面注册一段JS代码,然后在前台直接调用就OK了,例:
RegisterStartupScript("check",
"\n<script>\n" +
"function check()\n" +
"{\n" +
" return alert(''" + txtName.ClientID.ToString() + "'');\n" +
"}\n" +
"</script>\n";
JS获取服务器端控件ID的更多相关文章
- 使用js获取checkbox控件在GridView中的第几行
这次的知识点是如何使用js获取checkbox控件所在的是第几行!!! 我们可以使用 JavaScript 中自带的 rowIndex 和 cellIndex 来获取行和列的键值 (从0开始) 这两个 ...
- JS获取用户控件中的子控件Id
用户控件 <asp:HiddenField ID="hfGradeId" runat="server" /> <asp:HiddenField ...
- 页面获取Web控件ID不能正常获取,它惹得祸
今天碰到个比较奇葩的问题,因为动了一下目标框架,又原来的4.5.1改为3.5,然后又改回来了4.5.1,结果运行项目的时候发现界面js的计算,不能正常获值计算. 于是就开始找问题呗,先是发现这个二手项 ...
- JS 获取Button控件的提交类型
<script type="text/javascript"> <!--获取button控件的类型---> function isAuditOrCancel ...
- Jquery获取服务器端控件的三种方式
一 Jquery获得服务器控件值的方法由于ASP.NET网页运行后,服务器控件会随机生成客户端id,jquery获取时候不太好操作,google了下,总结有以下3种方法: 服务器控件代码:<as ...
- js获取file控件的完整路径(上传图片预览)
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding= ...
- Asp.Net 之 js/jquery获取服务器端控件
由于ASP.NET网页运行后,服务器控件会随机生成客户端id,jquery获取时候不太好操作,总结有以下3种方法:服务器控件代码:<asp:TextBox ID="txtUserID& ...
- JS 获取FileUpload1控件地址
function openList() { //判断浏览器类型 var isIE = (document.all) ? true : false; ); ); ); var path = " ...
- asp.net js获取控件ID
ClientID是由ASP.Net生成的服务器控件得客户端标识符,当这个控件生成到客户端页面的时候,在客户端代码访问该控件时就需要通过ClientID来访问. 以文本框为例: 一.未使用母版页 js可 ...
随机推荐
- oracle多表关联多字段update
多表关联多字段update 有代码有J8: update spatial_references set( auth_name, auth_srid, falsex, falsey, xyunits, ...
- PyTorch 60 分钟入门教程:数据并行处理
可选择:数据并行处理(文末有完整代码下载) 作者:Sung Kim 和 Jenny Kang 在这个教程中,我们将学习如何用 DataParallel 来使用多 GPU. 通过 PyTorch 使用多 ...
- mybaits错误解决:There is no getter for property named 'id' in class 'java.lang.String'
在使用mybaitis传参数的时候,如果仅传入一个类型为String的参数,那么在 xml文件中应该使用_parameter 来代替参数名. 正确的写法: <span style="f ...
- codeforces 686C C. Robbers' watch(dfs)
题目链接: C. Robbers' watch time limit per test 2 seconds memory limit per test 256 megabytes input stan ...
- sizeof注意
1.sizeof用于获取非托管类型的大小(以字节为单位). 非托管类型包括下表列出的内置类型以及以下类型: 枚举类型 指针类型 用户定义的结构,不包含任何属于引用类型的字段或属性 struct ...
- Pimple研究及PHP框架搭建
此文参考PHP容器--Pimple运行流程浅析 和 利用 Composer 一步一步构建自己的 PHP 框架,如有不清楚的,请参考原文. Pimple貌似在PHP社区里非常流行,听闻是个非常轻量化并且 ...
- asp.net 中的事务
ASP.NET开发过程中的事务处理 http://www.cnblogs.com/georgeHeaven/p/3766609.html
- bzoj 5195: [Usaco2018 Feb]Directory Traversal【树形dp】
注意到目录是一颗树结构,然后就简单了,预以1为根的处理出dis[u]为以这个点为根,到子树内的目录总长,si为子树内叶子数 第二遍dfs换根即可 #include<iostream> #i ...
- bzoj 1880: [Sdoi2009]Elaxia的路线【spfa+拓扑排序】
有趣啊 先spfa分别求出以s1,t1,s2,t2为起点的最短路,然后把在s1-->t1或者s2-->t2最短路上的边重新建有向图,跑拓扑最长路即可 #include<iostrea ...
- eurekaclient向eurekaserver注册使用真实ip设置
有时候eureka.instance.prefer-ip-address=true不管用,解决办法如下.