zoukankan      html  css  js  c++  java
  • 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", 
       " <script> " + 
       "function check() " + 
       "{ " + 
       "   return alert(''" + txtName.ClientID.ToString() + "''); " + 
       "} " + 
       "</script> "; 

  • 相关阅读:
    LeetCode:2. 两数相加
    LeetCode:1. 两数之和
    property类的使用
    JAVA-数据库连接【转】
    快速将excel数据保存到Oracle数据库中【转】
    Oracle导入excel数据方法汇总[转]
    Maven 系列 一 :Maven 快速入门及简单使用【转】
    Maven 系列 二 :Maven 常用命令,手动创建第一个 Maven 项目【转】
    开源项目导入eclipse的一般步骤[转]
    JavaScript基础---作用域,匿名函数和闭包【转】
  • 原文地址:https://www.cnblogs.com/yzl495/p/4152003.html
Copyright © 2011-2022 走看看