zoukankan      html  css  js  c++  java
  • 关于模板页调用js的问题

    首先看下面两段代码

        <script type="text/javascript">
            $(function () {
                $("#txtname").blur(function () {
                    var username = $(this).val();
                    if (username != "") {
                        $.post("/handler/Validatename.ashx", { "name": username }, function (date) {
                            $("#msg").text(date)
                        });
                    }
                    else {
                        $("#msg").text("用户名不能为空");
                    }
                });
            });
        </script>
       <asp:TextBox ID="txtname" runat="server"  style=" 500px;" class="inputtext"></asp:TextBox>

    这段代码显然是异步判断用户名是否存在,但是在网页运行的时候,调试发现,JS并没有执行,但是代码并没有错误,既然js没有执行,但是js的语法并没有错误,那么说明,一定是没有取到txtname,但是显然我们的id=“txtname”为什么没有取到呢?原来是因为,我们这段代码,是用了web的母版页的,我们不妨可以运行页面,查看网页源代码

        <input name="ctl00$ContentPlaceHolder1$txtname" type="text" id="ContentPlaceHolder1_txtname" class="inputtext" style=" 500px;" />

    网页把我们的代码翻译成了上述的情况了,那么我们怎么办呢?其实很简单!
    因为在JS中,.ClientID是输出生成的静态页的ID,所以我们只要将代码中的

    js中的$("#txtname")改为$('#<%=txtname.ClientID%>')
  • 相关阅读:
    【Linux题目】第七关
    【Linux题目】第六关
    【Linux题目】第五关
    【Linux常见命令】tar命令
    【Linux题目】第四关
    【linux题目】第三关
    【Linux删除问题】Operation not permitted
    【linux题目】第二关
    【linux题目】第一关
    java加密类Cipher的使用
  • 原文地址:https://www.cnblogs.com/guyali/p/5552755.html
Copyright © 2011-2022 走看看