zoukankan      html  css  js  c++  java
  • 外部Javascript文件获取.NET页面中服务器控件的ID

    引用:http://www.soaspx.com/dotnet/asp.net/tech/tech_20120302_8685.html

    方法一:使用内联JS访问器
    首先在页面注册该控件:

    <script type="text/javascript"

    function getClientId() 
    var paraId1 = '<%= Button1.ClientID %>';//注册控件1 
    var paraId2 = '<%= TextBox1.ClientID %>';//注册控件2 
    return {Id1:paraId1,Id2:paraId2};//生成访问器 
    </script
    然后在页面中引用外部JS:
    <script type="text/javascript" src="JScript.js"></script>//引用外部js
     
    在外部js文件JScript.js中:
    JScript.js 
    function GetID() 
    var btn=document.getElementById(getClientId().Id1); 
    btn.value="OKbtn1"; 
    var btn=document.getElementById(getClientId().Id2); 
    btn.value="OKbtn2"; 
    }
     
    方法二:使用JS全局变量
    页面:
    <script type="text/javascript"
    var globals = {}; 
    globals.controlIdentities = {}; 
    globals.controlIdentities.someControl1 = '<%= Button1.ClientID %>'
    globals.controlIdentities.someControl2 = '<%= TextBox1.ClientID %>'
    </script> 
    <script type="text/javascript" src="JScript.js"></script>
     
    JS文件:
    function ChangeText() 
    var btn=document.getElementById(globals.controlIdentities.someControl1); 
    btn.value="OKbtn"
    }
    在上面两种方法中,也没有真正的实现aspx和js的完全解耦,所以,在js文件中,最好还是加上:
    ///<reference path="Default5.aspx"/>
    以上是网上的一种解决方法个人决得虽然可以解决问题,但是还会有一小部份的js代码要写在html页面中。而用jQuery中的筛选器就完全只在外部js中编写jquery代码就能获得服务器控件的相关属性。
  • 相关阅读:
    linux rar安装
    ce
    Hp培训学习注册攻略
    Novell云计算
    bigdata
    Quest *nix Xwindows
    Foglight 5.6.7 控制台jboss报404
    view
    架构-数据库访问-SQL语言进行连接数据库服务器-DB-Library:DB-Library
    架构-数据库访问-SQL语言进行连接数据库服务器:SQL语言进行连接数据库服务器
  • 原文地址:https://www.cnblogs.com/jsping/p/2681614.html
Copyright © 2011-2022 走看看