13 javascript ajax jquery
我是JavaScript库的新手.我想用jQuery替换我当前的代码.我当前的代码如下所示:
var req;
function createRequest() {
var key = document.getElementById("key");
var keypressed = document.getElementById("keypressed");
keypressed.value = key.value;
var url = "/My_Servlet/response?key=" + escape(key.value);
if (window.XMLHttpRequest) {
req = new XMLHttpRequest();
} else if (window.ActiveXObject) {
req = new ActiveXObject("Microsoft.XMLHTTP");
}
req.open("Get", url, true);
req.onreadystatechange = callback;
req.send(null);
}
function callback() {
if (req.readyState == 4) {
if (req.status == 200) {
var decimal = document.getElementById('decimal');
decimal.value = req.responseText;
}
}
clear();
}
Run Code Online (Sandbox Code Playgroud)
我想用一些比jQuery更友好的东西替换我的代码
$.get(url, callback);
Run Code Online (Sandbox Code Playgroud)
但是它不会调用我的回调函数.
我也想调用一个createRequest连续调用的函数.jQuery有一个很好的方法吗?
Las*_*sar 19
$.get(url, {}, callback);
Run Code Online (Sandbox Code Playgroud)
应该做的伎俩.你的回调可以像这样简化:
function callback(content){
$('#decimal').val(content);
}
Run Code Online (Sandbox Code Playgroud)
甚至更短:
$.get(url, {}, function(content){
$('#decimal').val(content);
});
Run Code Online (Sandbox Code Playgroud)
总而言之,我认为这应该有效:
function createRequest() {
var keyValue = $('#key').val();
$('#keypressed').val(keyValue);
var url = "/My_Servlet/response";
$.get(url, {key: keyValue}, function(content){
$('#decimal').val(content);
});
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
30188 次 |
| 最近记录: |