我最近在jquery进行了实验,想学习如何将文本框中的对象发送到我的脚本。例如:
<asp: textbox id="box1" onchange="javascript: test(this);" runat="server"></asp:TextBox>
脚本:
function test(obj){
if(parseInt(obj.val())){
// code
}
}
这不起作用!我后来发现我必须使用“$”符号来完成这项工作,如下所示:
$(OBJ).VAL()
为什么呢?我想我已经在参数中有了我需要的对象,为什么我需要再次选择它?
谢谢!
答案 0 :(得分:6)
val
是jQuery集合的一种方法,它是将选择器或DOMElement对象传递给$
时返回的内容。要在不使用jQuery的情况下访问该值,请使用DOM公开的value
属性。
function test(obj){
if(parseInt(obj.value){
// code
}
}
答案 1 :(得分:1)
您发送到函数中的this
(并在函数中用作obj
)只是一个javascript对象。 $()
将它变成了一个jQuery对象,它将所有额外的功能添加到jQuery提供的对象中(包括val()
方法)。
答案 2 :(得分:0)
this
是一个DOM元素。
$(this)
是一个jQuery对象。
您只能在jQuery
个对象上调用jQuery
个方法。
答案 3 :(得分:0)
$是jQuery的快捷方式。因此,要访问jQuery库提供的功能,您需要将 Javascript对象“转换”为 jQuery对象。