Jon*_*rft 1 javascript ajax jquery
基本上我正在尝试在Jquery中创建一个AJAX脚本.但主要问题是我想要定义这样的变量
$(document).ready(function () {
var u = $('#username');
var s = $('#server');
var p = $('#password');
$('#server').keyup(function () {
$.post("connect.php", { s: s.value, u: u.value , p: p.value },
function(data) {
$('#hol').html('checking connection...' + u.value + " " + p.value + " " + s.value + " " + data);
}
);
});
});
Run Code Online (Sandbox Code Playgroud)
但是这种方式不起作用......我必须用"this"来定义变量而不是能够事先分配它们,这似乎很奇怪.
有效的代码是
$(document).ready(function () {
$('#username').keyup(function () {
var u = this;
$('#password').keyup(function () {
var p = this;
$('#server').keyup(function () {
var s = this;
$.post("connect.php", { s: s.value, u: u.value , p: p.value },
function(data) {
$('#hol').html('checking connection...' + u.value + " " + p.value + " " + s.value + " " + data);
}); });
});
});
});
Run Code Online (Sandbox Code Playgroud)
所以我的问题基本上是"如何让jquery捕获文本字段中的输入并将其分配给变量?就像在第一个例子中那样?" 或者它不必在很长的路上完成?
您需要使用.val()
而不是.value
:
{ s: s.val(), u: u.val() , p: p.val() }
Run Code Online (Sandbox Code Playgroud)
as s
,u
和p
是jQuery对象,而不是DOM Elements.