2

我是 jquery 和 asp.net 的新手。我正在使用以下编码来检索值。为什么使用 $(#textbox1)[0].value 中的 [0]?有没有其他方法来检索价值?

$.ajax({
                     type: "POST",
                     url: "Default.aspx/GetTextData",
                     data: "{}",
                     contentType: "application/json",
                     dataType: "json",
                     success: function(msg) {
                       $("#txtResult")[0].value = msg.d;
                     }
                 });

非常感谢

4

2 回答 2

2

在您的代码上下文中,它实际上并不是在检索值,而是在设置:

$("#txtResult")[0].value = msg.d

您可以使用替代的 jQuery 语法(根据我的评论):

$('#txtResult').val(msg.d)

需要使用[0]该代码的作者想要为DOMElement输入的标准分配一个值,用于从该 jQuery 对象[0]获取本机。DOMElement或者,您可以使用:

$('#txtResult').get(0).value = msg.d

虽然之前的方式还是比较可取的

于 2012-05-07T06:15:55.493 回答
0

我建议$("#txtResult").val(msg.d)改用,因为那是 jQuery 函数。

使用 [0] 的原因是访问 DOM 元素而不是 jQuery 元素(例如,你不能运行$("#txtResult")[0].val(msg.d),因为.val它是一个 jQuery 函数)

$("#txtResult").val(-something-)实际上设置了值(不是在你写的问题中检索)。

$("#txtResult").val()是用于从元素中检索值的命令。

于 2012-05-07T06:21:28.983 回答