zoukankan      html  css  js  c++  java
  • 关于在ASP.NET中使用JavaScript的建议

         一个很恼人的情况,就是当你使用JS在一个ASP,NET应用程序中引用一个在模板页初始化的服务器控件的时候:

    比如,我们在模板页有一个TextBox的服务器控件,而且我们想要去获取他的Text;如果你使用document.getElementById(‘controlId’)来获取,你将得到"object expected" 或者 "object is null;"的错误提示。ID没错,JS语法没错,为什么会出现这样的错误呢?

    事实是这样的,服务器控件在运行时的ID是变化的,而且他们会被添加一个包围他们的容器的前缀,不信的话,可以在运行的时候,打开前台的HTML代码,查看是否那个服务器控件的ID已经改名了。

    针对这个问题,下面给出两个方法:

    方法1:利用运行时候,查看并记录该控件在HTML显示页面的ID;然后就可以使用JS的

    document.getElementById('id');方法获取。但是这种方法很低级而且不灵活。

    方法2:使用代码获取新的ID,ASP.NET的任何服务器控件都包含一个ClientID属性,可以利用这个属性来获取运行时的控件ID,但是我们想要使用JS来获取这个ID,所以,我们可以这样做:

    var txtBox = document.getElementById('<%=txtName.ClientID%>');

    <%=%>这个标记里面可以书写C#代码的,会不会觉得这个方法既简单又灵活呢?

    如果你想调试你的JS代码,不知道怎么做?下面给你介绍方法:

    可以把你的JS代码放在一个单独的JS文件中,这样你就可以在JS代码中插入断点,接着启用IE的JavaScript调试功能,下面是启用步骤:

    在“工具”菜单中选择Internet选项,“高级”选项卡,

     

    ,插入你的断点,按F5就可以调试了~~~

    声明:文章还有附带的源码或者文件,一切解释权都决定于The Code Project Open License (CPOL)

    关于作者:Ahmed_Said

    来着:Software Developer Asset Technology Group

    国家:Egypt Egypt

    文章来源:http://www.codeproject.com/Articles/108378/Tips-about-using-JavaScript-in-Asp-Net

    译者:本人

    作者:Elaine
    交流QQ:392989505
  • 相关阅读:
    线性地址物理地址逻辑地址转换mmu
    C/c++ 宏返回值
    树的子结构
    合并两个排序的链表
    链表中倒数第k个结点
    数值的整数次方
    原码、反码与补码
    二进制中1的个数
    矩形覆盖
    变态跳台阶
  • 原文地址:https://www.cnblogs.com/ITGirl00/p/3357349.html
Copyright © 2011-2022 走看看