我的jsp页面中有两个文本框。在用户按TAB键后在第一个文本框中输入数据后,自动控制将调用servlet(在javascript中)然后将填充第二个文本框。任何帮助表示赞赏。
答案 0 :(得分:2)
您可以订阅第一个文本框的.keydown()
事件,如果密钥是TAB,则触发对servlet的AJAX请求:
$(function() {
// subscribe to the keydown event
$('#text1').keydown(function(e) {
// when a key is pressed check if its code was 9 (TAB)
if (e.which == 9) {
// if TAB was pressed send an AJAX request
// to the server passing it the currently
// entered value in the first textbox
$.ajax({
url: '/someservlet/',
type: 'POST',
data: { value: $(this).val() },
success: function(result) {
// when the AJAX succeeds update the value of the
// second textbox using the result returned by the server
// In this example we suppose that the servlet returns
// the following JSON: {"foo":"bar"}
$('#text2').val(result.foo);
}
});
}
});
});
这是live demo。
答案 1 :(得分:1)
使用TAB
在javascript中抓取keycode
键。然后使用ajax调用来调用servlet
有关ajax的更多信息
答案 2 :(得分:1)
你可以尝试这个。只需调用您的函数,它将在第二个文本框模糊事件中填充第二个文本框。
$('#secondtextbox').blur(function() {
$.ajax({
url: '/someservlet/',
type: 'POST',
data: { value: $('#firsttestbox').val() },
success: function(result) {
// when the AJAX succeeds update the value of the
// second textbox using the result returned by the server
// In this example we suppose that the servlet returns
// the following JSON: {"foo":"bar"}
$(this).val(result.foo);
}
});
});
希望这有帮助