zoukankan      html  css  js  c++  java
  • JS脚本应用中遇到的一点问题

         最近需要实现一个简单的功能,即要让GridView模板列显示从下拉列表中获取的值,我选择在客户端编写脚本实现。但遇到了一些问题。经过努力问题最终得以解决,于是作下记录,以备用。

    先贴出代码吧!

    【前台代码】

         <script language ="javascript" type = "text/javascript">

          function sel()

          {

               var select = document.getElementById("ddlDmSize_12");

               var select_text = select.options[select.selectedIndex].innerText;

               var str = select_text;

               var newstr = str.split("|");

    //           document.getElementById("GridView1_ctl12_txt_Lm").innerText = newstr[0];

    //           document.getElementById("GridView1_ctl12_txt_Dm").innerText = newstr[1];

    //           document.getElementById("GridView1_ctl12_txt_Gg").innerText = newstr[2];

    //           document.getElementById("GridView1_ctl12_txt_Dw").innerText = newstr[3];

               document.getElementById("GridView1$ctl12$txt_Dm").innerText = newstr[0];

               document.getElementById("GridView1$ctl12$txt_Lm").innerText = newstr[1];

               document.getElementById("GridView1$ctl12$txt_Gg").innerText = newstr[2];

               document.getElementById("GridView1$ctl12$txt_Dw").innerText = newstr[3];

          }

         </script>

    【后台代码】

      if (!IsPostBack)

            {

                ddlDmSize_12.Attributes.Add("onchange", "sel()");

            }

    如果用上面注释掉的语句在VS2005上是可以正常运行的,但是放到虚拟目录下执行却总要报错。

     

    于是认真对比了两个源文件(被浏览器解析后),发现确实是有细微差别

    这是VS2005上运行后的,从源文件中摘录的:

    <input name="GridView1$ctl12$txt_Dm" type="text" id="GridView1_ctl12_txt_Dm" />

    这是在建立了虚拟目录运行后的,从源文件中摘录的:

    <input name="GridView1$ctl12$txt_Dm" type="text" id="GridView1_txt_Dm" />

    注意到id的值发生了变化

    原本以为获取name 和id 值都能够达到相同效果(实际在vs上并无影响)。

    然而为了确保更加准确还是应该选择name属性的值。

  • 相关阅读:
    Struts2 源码分析——调结者(Dispatcher)之准备工作
    H3C交换机配置镜像端口
    华为交换机S5700系列配置镜像端口(M:N)
    华为交换机S5700系列配置镜像端口(1:1)
    华为交换机基本操作
    华为S系列交换机全面阻击“WannaCry”
    华为S5700系列交换机配置通过Telnet登录设备
    华为S1720, S2700, S5700, S6720 V200R010C00 产品文档
    华为S5700系列交换机使用高级ACL限制不同网段的用户互访
    华为S5700系列交换机配置通过流策略实现VLAN间三层隔离
  • 原文地址:https://www.cnblogs.com/lucky_hu/p/2030201.html
Copyright © 2011-2022 走看看