当前位置:编程学习 > JAVA >>

jQuery ajax servlet 为什么传不到servlet 求解释

js中代码
function checkLoginUser(){

$.ajax(
{
type:'post',
url:"LoginServlet?username="+$("#LoginUserName").val()+"&password"+$("#LoginPassWord").val(),
dataType:'text',
success:function(msg){
if(msg =="true"){
alert("用户名或密码错误");
document.getElementById("LoginUserName").value = "";
document.getElementById("LoginPassWord").value = "";
}else{
window.location.href="clientquery.jsp"
}
},
error:function(){
alert("Unable to create Request!");
}
})
}
********servlet中代码************************
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
response.setContentType("text/html");
request.setCharacterEncoding("UTF-8");
        response.setContentType("text/html");
PrintWriter out = response.getWriter();
        String name = request.getParameter("userName");
String pwd = request.getParameter("passWord");
System.out.print(name);
System.out.print(pwd);

为什么控制台打印出来  nullnull  --------------------编程问答-------------------- 没人帮忙吗 愁死我了 --------------------编程问答-------------------- Jquery传参数不能这样传的 参数需要单独定义 我给你看个例子你就懂了

$("a:contains('删除')").click(function(){
if(confirm("确认删除吗?")){
var $id=$(this).attr("id");
var _data={id:$id};

$.post("${base}/material/delete.htm", _data,function(data) {
if(data=="success"){
$("tr[name="+$id+"]").remove();
}
}, 'text');
}
}); --------------------编程问答-------------------- String name = request.getParameter("userName");
String pwd = request.getParameter("passWord");
你这里取的参数名跟你URL里的参数名的大小写不一致,改了试试 --------------------编程问答-------------------- String name = request.getParameter("userName");
String pwd = request.getParameter("passWord");
你这里取的参数名跟你URL里的参数名的大小写不一致,改了试试  --------------------编程问答-------------------- url:"LoginServlet?username="+$("#LoginUserName").val()+"&password"+$("#LoginPassWord").val(),
password="+$("#LoginPassWord").val(),
你少个 = ,而且大小写和你SERVLET里面的也不一样呀 --------------------编程问答--------------------
引用 2 楼 qejg6rt5f 的回复:
Jquery传参数不能这样传的 参数需要单独定义 我给你看个例子你就懂了

$("a:contains('删除')").click(function(){
if(confirm("确认删除吗?")){
var $id=$(this).attr("id");
var _data={id:$id};

$.post("${base}/material/delete.htm", _data……



那要是传递两个值呢 --------------------编程问答--------------------
引用 5 楼 zyx80004 的回复:
url:"LoginServlet?username="+$("#LoginUserName").val()+"&password"+$("#LoginPassWord").val(),
password="+$("#LoginPassWord").val(),
你少个 = ,而且大小写和你SERVLET里面的也不一样呀



已实验 没成功 --------------------编程问答-------------------- 你检测一下你的路径正确不,你在地址栏中输入个常量的账户名和密码测试一下你的url比如LoginServlet?username=zhang&password=san然后看一下有问题没有
--------------------编程问答-------------------- 传递两个值的话

引用 6 楼 chongdaxia 的回复:
引用 2 楼 qejg6rt5f 的回复:Jquery传参数不能这样传的 参数需要单独定义 我给你看个例子你就懂了

$("a:contains('删除')").click(function(){
if(confirm("确认删除吗?")){
var $id=$(this).attr("id");
var _data={id:$id};

$.post("$……


传递两个值的话这样写
var $id;
var $name;
var _data={id:$id,name:$name}; --------------------编程问答--------------------
引用 9 楼 qejg6rt5f 的回复:
传递两个值的话

引用 6 楼 chongdaxia 的回复:引用 2 楼 qejg6rt5f 的回复:Jquery传参数不能这样传的 参数需要单独定义 我给你看个例子你就懂了

$("a:contains('删除')").click(function(){
if(confirm("确认删除吗?")){
var $id=$(this).attr("id");
……


+1而且LZ,你的看好你的大小写。。
不然后台也取值不到!
先熟悉下jquery.post的语法,你这样传值,就感觉用连接了一样,是不对的! --------------------编程问答-------------------- 首先要规范你的代码。
使用和调用使用相同的参数名 变量名 方法名(良好的习惯是减少问题产生的利器)。
然后才是语法方面的东西。
补充:Java ,  Web 开发
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,