博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
13. vs2010 ClientID bug处理
阅读量:6908 次
发布时间:2019-06-27

本文共 3194 字,大约阅读时间需要 10 分钟。

在VS2010中的产生ClientID有几种方式,每个控件或页面有个ClientIDMode属性,可以用来决定产生ClientID的方式,它有AutoIDStaticInheritPredictable,具体区别请在网上查找。默认为AutoID.

但在VS2010中产生的ClientID是有bug.即产生的ClientID和客户端产生的HTML的ID是不一样的,因此在用js或jQuery的函数中要调用指定ID的元素时系统提示不存在此元素。

处理思路:

    由于每个元素产生的ClientID是唯一的,我们可以给要用到的元素设定一个或多个属性,这此属性也是唯一的,这样可以在js中用这些属性来找到此元素并操作它。

示例:

     1.在页面中有三个输入框,单价、数量、总金额,当离开单价框或数量框时,会自动在总金额中显示单价*数量的值。因此我们可以建立数据表:id(自增),price(单价),count(数量),Amount(金额).

     2.由于要在新增是就应该建立元素的属性,因此用listview 的ItemCreated事件,在这里面注册每个元素属性,并注册它们的事件。

     3.html源码:

   

<%@ Page Language="C#"  AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="ClientIDBug.WebForm1" %>                
未返回数据。
 
id price count amount

  4. ListView的ItemCreate源码

   

protected void ListView1_ItemCreated(object sender, ListViewItemEventArgs e)        {            if (e.Item.ItemType == ListViewItemType.InsertItem)            {                TextBox priceTextBox = (TextBox)e.Item.FindControl("priceTextBox");                TextBox countTextBox = (TextBox)e.Item.FindControl("countTextBox");                TextBox amountTextBox = (TextBox)e.Item.FindControl("amountTextBox");                priceTextBox.Attributes["myid"] = priceTextBox.ClientID;                countTextBox.Attributes["myid"] = countTextBox.ClientID;                amountTextBox.Attributes["myid"] = amountTextBox.ClientID;                string amountfun=string.Format("onamount('{0}','{1}','{2}')",priceTextBox.ClientID,countTextBox.ClientID,amountTextBox.ClientID);                priceTextBox.Attributes["onblur"] = amountfun;                countTextBox.Attributes["onblur"] = amountfun;            }        }

 

  

 

转载于:https://www.cnblogs.com/yagzh2000/p/3171069.html

你可能感兴趣的文章
Objective-C SQLite数据库封装FMDB的介绍
查看>>
记 移动端页面中莫名其妙的渲染BUG
查看>>
[转载]深入理解Python异步编程(上)
查看>>
java版MD5签名工具类
查看>>
python中的常用模块
查看>>
百度UEditor(富文本编辑器)的基础用法
查看>>
天空的另一半
查看>>
面向 Photoshop 的英特尔® Texture Works 插件
查看>>
Docker - 配置国内加速器加速镜像下载
查看>>
批量删除Sql Server对象(表,存储过程,触发器)
查看>>
[LeetCode]Remove Linked List Elements
查看>>
QTableWidget简单操作
查看>>
2018-2019-1 20165318《信息安全系统设计基础》第六周课上测试
查看>>
mongodb索引
查看>>
HDU 1053 Entropy
查看>>
Jenkins+Gradle+Sonar进行Java项目代码分析
查看>>
JAVA并发,线程优先级
查看>>
Selenium Web 自动化 - 项目持续集成(进阶)
查看>>
用于string对象中字符截取的几种函数总结——语法、参数意义及用途举例
查看>>
source tree使用经验
查看>>