// 假设你有一段JavaScript文本
var text = "alert('Hello, World!');";
// 创建一个新的script元素
var script = document.createElement('script');
script.type = 'text/javascript';
// 兼容不同浏览器的方式设置script的text内容
if (script.text) {
script.text = text;
} else if (script.textContent) {
script.textContent = text;
} else if (script.innerHTML) {
script.innerHTML = text;
}
// 将script元素追加到head中
document.head.appendChild(script);
如果使用jQuery,可以更简洁地实现同样的功能:
var data = "alert('Hello, World!');";
// 创建一个新的sc...
unbind([type], [data]) 返回值:jQuery
概述
bind()的反向操作,从每一个匹配的元素中删除绑定的事件。
如果没有参数,则删除所有绑定的事件。
你可以将你用bind()注册的自定义事件取消绑定。
如果提供了事件类型作为参数,则只删除该类型的绑定事件。
如果把在绑定时传递的处理函数作为第二个参数,则只有这个特定的事件处理函数会被删除。
参数
type (可选)String
事件类型
data (可选)Function
要从每个匹配元素的事件中反绑定的事件处理函数
示例
描述:
把所有段落的所有事件取消绑定
jQuery 代码:
$("p").unbind()
描述:
将段落的click事件取消绑定
jQuery...
triggerHandler(type, [data]) 返回值:jQuery
概述
这个特别的方法将会触发指定的事件类型上所有绑定的处理函数。但不会执行浏览器默认动作,也不会产生事件冒泡。
这个方法的行为表现与trigger类似,但有以下三个主要区别:
* 第一,他不会触发浏览器默认事件。
* 第二,只触发jQuery对象集合中第一个元素的事件处理函数。
* 第三,这个方法的返回的是事件处理函数的返回值,而不是据有可链性的jQuery对象。此外,如果最开始的jQuery对象集合为空,则这个方法返回 undefined 。
参数
typeString
要触发的事件类型
data (可选)Array
(可选)传递给事件处理函数的附加参数
示例
...
trigger(type, [data]) 返回值:jQuery
概述
在每一个匹配的元素上触发某类事件。
这个函数也会导致浏览器同名的默认行为的执行。比如,如果用trigger()触发一个'submit',则同样会导致浏览器提交表单。如果要阻止这种默认行为,应返回false。
你也可以触发由bind()注册的自定义事件而不限于浏览器默认事件。
事件处理函数会收到一个修复的(规范化的)事件对象,但这个对象没有特定浏览器才有的属性,比如keyCode。
jQuery也支持 命名空间事件。这允许你触发或者解除绑定一组特定的事件处理函数,而无需一一个指定。你可以在事件类型后面加上感叹号 ! 来只触发那些没有命名空间的事件处理函数。
jQu...
one(type, [data], fn) 返回值:jQuery
概述
为每一个匹配元素的特定事件(像click)绑定一个一次性的事件处理函数。
在每个对象上,这个事件处理函数只会被执行一次。其他规则与bind()函数相同。这个事件处理函数会接收到一个事件对象,可以通过它来阻止(浏览器)默认的行为。如果既想取消默认的行为,又想阻止事件起泡,这个事件处理函数必须返回false。
多数情况下,可以把事件处理函数定义为匿名函数(见示例一)。在不可能定义匿名函数的情况下,可以传递一个可选的数据对象作为第二个参数(而事件处理函数则作为第三个参数),见示例二。
参数
typeString
事件类型
data (可选)Object...
bind(type, [data], fn) 返回值:jQuery
概述
为每一个匹配元素的特定事件(像click)绑定一个事件处理器函数。
这个事件处理函数会接收到一个事件对象,可以通过它来阻止(浏览器)默认的行为。如果既想取消默认的行为,又想阻止事件起泡,这个事件处理函数必须返回false。多数情况下,可以把事件处理器函数定义为匿名函数(见示例一)。在不可能定义匿名函数的情况下,可以传递一个可选的数据对象作为第二个参数(而事件处理器函数则作为第三个参数),见示例二。
参数
typeString
事件类型
data (可选)Object
作为event.data属性值传递给事件对象的额外数据对象
fnFunction
绑定到每个...
removeData(name) 返回值:jQuery
概述
在元素上移除存放的数据
与$(...).data(name, value)函数作用相反
参数
nameString
存储的数据名
示例
描述:
参考data(name)的示例
data(name, value) 返回值:Any
概述
在元素上存放数据,同时也返回value。
如果jQuery集合指向多个元素,那将在所有元素上设置对应数据。
这个函数不用建立一个新的expando,就能在一个元素上存放任何格式的数据,而不仅仅是字符串。
参数
nameString
存储的数据名
valueAny
将要存储的任意数据
示例
描述:
参考data(name)的示例
data(name) 返回值:Any
概述
返回元素上储存的相应名字的数据,可以用data(name, value)来设定。
如果jQuery集合指向多个元素,那将只返回第一个元素的对应数据。
这个函数可以用于在一个元素上存取数据而避免了循环引用的风险。jQuery.data是1.2.3版的新功能。你可以在很多地方使用这个函数,另外jQuery UI里经常使用这个函数。
参数
nameString
存储的数据名
示例
描述:
在一个div上存取数据
HTML 代码:
<div></div>
jQuery 代码:
$("div").data("blah"); // undefined
$("div").data("blah&...
<HTML>
<HEAD>
<TITLE> JS模仿的DataGrid</TITLE>
</HEAD>
<SCRIPT LANGUAGE="JavaScript">
<!--
function ChangeValue(objTD)
{
var objName;
objName = objTD.id;
objTD.innerHTML = "<input type=text id=txtBox name=textfield value="+objTD.innerText+" onBlur=WriteNewValue(this.value,"+objName+");>";
}
function WriteNewValue(strTxt,objTD)
{
objTD.innerText = strTxt;
}//-->
</SCRIPT>
<BODY>
<TABL...
对于多数网页制作的朋友,实现在客户端保存在网页表单上的信息,比较多的是采用Cookie技术来实现,这些功能例如:下拉列表框选择的选项,文本框输入的数据等。事实上,我们可以利用微软DHTML默认行为中的userData行为来实现这个功能。 因为很多网友问到这样的问题,整理了一下,并提供了三个示例。下面将就该行为的使用做一个介绍: UserData 行为(userData Behavior): 1、说明: userData行为通过将数据写入一个UserData存储区(UserData store)来保存数据,userData可以将数据以XML格式保存在客户端计算机上,如果你用的是 Windows 2000 或者 Windows XP,是保存在C:Documents and SettingsLimingUserData文...
当我们选中该Cell后,第1时间得到的该值为:dgView1.Rows(i).Cells(1).Value = False
不过在DataGridView.CurrentCellDirtyStateChanged事件中增加以下语句:DataGridView.CommitEdit
该事件的意思是:单元格状态因其内容更改而更改是发生
CommitEdit :将当前单元格中的更改提交到数据缓存,但不结束编辑模式
引自msdn:
通常,复选框单元格值专门用于存储(如同其他任何数据一样)或用于执行批量操作。如果您想在用户单击复选框单元格时立即作出响应,可以处理 DataGridView.CellClick 事件,但此事件发生在单元格值更新之前。如果在单击时需要新的值,则有一个选项可以计算基于当前值的预期值。另一...
DataGrid中想实现这样的效果:
根据某一字段列的值动态改变按钮的文本,比如:
点击按钮列,自动更新某列原为0的值为1,并将按钮列的文本改为“置0”,再按下,自动更新某列原为1的值为0,并将按钮列的文本改为“置1”,最终通过NamingContainer,实现! 方法如下 :
<asp:DataGrid id="DataGrid1" runat="server" AutoGenerateColumns="False">
<Columns>
<asp:BoundColumn DataField="HonoreeID" HeaderText="ID"></asp:BoundColumn>
<asp:BoundColumn DataField="status" HeaderText="...
自己定义DataSet的列字段名称: 就是建立一个类,并让此类继承DataSet. 并预先给DataSet添加一些自定义的列. 有两个优点:
1. 在引用时,直接引用: DataSet.Table[0].Row[0][Customer.Name]; 而不是: DataSet.Table[0].Row[0]["CustomerName"]; 这样,如果数据库字段名称变化时(将CustomerName改为CusName),则只需修改: Customer类的属性Name的值即可,没必要在整个程序中一个一个地搜索. 节省时间,易于维护.
2. 经常用在 添加/新增 界面中,在添加之前没有从数据库获得数据给DataSet,即客户端 与数据库交互是单向的,即只从客户端往数据库发送数据. 这时,DataSet的内部结构没有定义. 就得用自定义DataS...
经过半年的asp.net学习和开发的实践,随着学会的东西在不断增加的同时也发现不会的东西也在不断地增加,尽管如此,在这段时间里还是或多或少地积累了一些个人的开发经验,最重要的是学会如何更加充分地利用已经知道的知识和技术来完成自己想要达到的目的。 [newsad][/newsad]
如何实现主从式表的显示问题是我开发中所遇到的一个难题,在这个问题中还涉及到在DataGrid中使用复选框控件和定制DataGrid的单元格的问题。下面就这三个问题逐一进行解决。
一、在DataGrid中使用复选框控件
这个问题的解决有几种方式,我选用了一种既适用于复选框控件又适用于单选框控件的方式。具体实现如下:
为DataGrid创建一个ButtonColumn...
近一段时间以来,我发现博客又掀起了新的一轮讨论热潮,特别是针对WebForm和MVC的讨论。这样的讨论可以促进大家的进步,同时也可以让每个人对每种技术的了解都更加深入。不同的技术都有自己的最佳实践,比如WebForm和MVC。如果我们大家在平常的开发实践中都能遵从每一种技术基本使用原则,而不是滥用,那么我就不信不会得到最佳效果。
这里,我要讨论的是如何合理的利用DataSourceControl,来简化我们在页面的一些数据操作,代替一部分的参数处理工作,并最终取代页面的后台代码文件。这个思路,源于在asp.net Blogs的一篇文章(我目前已经找不到该文章的链接的,大概意思就是讲如果利用DataSourceControl来封装一些复杂...