• 关于模板页调用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%>')
  • 相关阅读:
    教你作一份高水准的简历
    python并发
    阻塞,非阻塞,同步,异步
    python三层架构
    paramiko与ssh
    python-进程
    生产者消费者模型
    python-线程
    python-socket
    python-mysql
  • 原文地址:https://www.cnblogs.com/guyali/p/5552755.html
Copyright © 2020-2023  润新知