Java 输入标记赢得';不能正确使用jQueryAjax
我编写了一个代码,当客户机在输入中键入某些内容时,它会将数据发送到jsp文件进行计算,如果数据等于“James”,它会说“Hello James”。问题是输入标签不会显示您的输入,只接受1个输入Java 输入标记赢得';不能正确使用jQueryAjax,java,jquery,ajax,jsp,Java,Jquery,Ajax,Jsp,我编写了一个代码,当客户机在输入中键入某些内容时,它会将数据发送到jsp文件进行计算,如果数据等于“James”,它会说“Hello James”。问题是输入标签不会显示您的输入,只接受1个输入 jQuery w/ input <fieldset> <form style="padding:15px;"> <label for=name>Enter Name:</label> <input type="text" name="nam
jQuery w/ input
<fieldset>
<form style="padding:15px;">
<label for=name>Enter Name:</label>
<input type="text" name="name" id="name">
</form>
</fieldset>
<div id="result"></div>
<script>
$(document).ready(function() {
$("input").keypress(function(event) {
event.preventDefault();
var name = $("#name").val();
var send = {
name: name
};
$.ajax({
type: "POST",
url: "process2.jsp",
data: send,
success: function(data) {
$("#result").html(data);
}
})
});
});
</script>
-----------------------
JSP FILE:
<%
String name = request.getParameter("name");
if(name.equals("James")){
out.println("Hello James");
} else {
out.println("Hello User");
}
%>
jQuery w/input
输入名称:
$(文档).ready(函数(){
$(“输入”)。按键(功能(事件){
event.preventDefault();
var name=$(“#name”).val();
变量发送={
姓名:姓名
};
$.ajax({
类型:“POST”,
url:“process2.jsp”,
数据:发送,
成功:功能(数据){
$(“#结果”).html(数据);
}
})
});
});
-----------------------
JSP文件:
代码的问题在于分配的名称变量不正确。而不是写作
var name = $("#name").val();
你应该写
var name = event.target.value;
否则,您将按每一个按键重复一次相同的值,使得无法键入多于一个字符。
您也可能想考虑从代码中删除Engult.EnvultDebug()。你为什么要把它放在那里?默认的“防止”是以前的版本。但是无论如何,我的回答解决了你问题的原因了吗?如果是的话,请友好地将其标记为已接受的答案。否则让我知道!是的,我就是这么做的。stackoverflow新手,所以不知道存在这样的东西,输入标签不会显示您的输入,只接受1个输入。
这意味着什么?你能详细说明一下吗?尝试使用keyup
而不是keypress
事件。这意味着输入文本框不会显示超过1个字符。我还将确保使用更多的keyup尝试将$(“输入”).keypress(函数(事件)
更改为$(“输入”).keyup(函数(事件)
并检查它是否工作。是的,它工作得很好:)