ajax接收并传递参数问题

现在我有一个ajax网页realtime.jsp,其中向后台传参数是这样的data:{table:'0050c2236701'}但是我现在希望可以手动输入这个参数,因此我... 现在我有一个ajax网页realtime.jsp,其中向后台传参数是这样的
data: {table: '0050c2236701'}

但是我现在希望可以手动输入这个参数,因此我新建了个网页,使用form传递用户输入的参数
<FORM id="sub" action="realtime.jsp" method="post">
Name: <input type="text" name="name" />
<input type="submit" value="Submit Comment" />
</FORM>
但是我不知道怎么可以让realtime.jsp中的ajax代码接受到用户输入的参数呢?
同时,我这个realtime.jsp中的ajax代码是自动无刷新的 : setInterval(getData,1000);
向后台 : url: "getdata.jsp"
不停的提交这个data参数,所以可不可以让用户输入一次,提交之后,让realtime.jsp这个网页上的ajax代码一直提交用户输入的参数。直到用户返回?
不是很明白gwg的回答,我现在主要不明白2点
一个是怎么可以让ajax接受form提交过来的数据,然后作为 data: {xx:xx},提交给后台?
一个是如果ajax可以接受了,但是由于我这个ajax代码是每秒钟都会自动调用一次function getData() 所以能否让ajax接受一次参数以后都按照这个参数去提交?
展开
 我来答
tz6060996
2012-11-28 · TA获得超过2282个赞
知道大有可为答主
回答量:1171
采纳率:100%
帮助的人:1600万
展开全部
1、realtime.jsp接收参数的语句是:
String name=request.getParameter("name");
然后将
data: {table: '0050c2236701'}
改成:
data: {table: '<%=name%>'}
2、setInterval(getData,1000);应该是javascript语句,应该可以反复提交。
3、有一点不明白的是:这么做想去实现一个什么样的功能,还有怎么让他停止呢?
更多追问追答
追问
我不知道我理解的对不对,这个String name=request.getParameter("name");是jsp代码吧?我在realtime.jsp的body里面写这个 代码么?但是ajax代码会在jsp之前执行,应该是不能读到这个name的吧?

我这么写了之后,data: {table: ''},myeclipse提示我这个name不能被解析。。

我这么做是想实现这样的效果,就是用户可以输入参数,选择某个文件,不停的实时刷新这个文件内容,因为这个文件会被隔一段时间就更新
追答
1、不错,String name=request.getParameter("name");是服务端代码,所以应该放在中
2、对“但是ajax代码会在jsp之前执行,应该是不能读到这个name的吧?”,这个问题应该这么去解决:
将javascript,或者你说的Ajax代码放在:
$(document).ready(){function(){
//放在这里
}}
这样的话,只有等服务端代码加载完成后才会执行javascript
唯爱多啦梦cQb8a
2012-11-28 · TA获得超过639个赞
知道小有建树答主
回答量:746
采纳率:0%
帮助的人:526万
展开全部
可以啊,先把参数设置成全局变量,然后从ealtime.jsp传递到 后台中,然后后台会给前台一个返回码 如果200就正确了,如果不是200你就判下重新提交,因为参数是全局,所以丢不了

第一个问题答案,form里面控件的值,用document.getElementById().value的方法可以获取,然后赋值给data
第二个问题答案,把data变成全局变量,不是在funtion里声明,然后ajax在调用的时候只要你的data没改变,那么ajax传的就是一个值
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
a348876412
2012-11-29 · TA获得超过136个赞
知道小有建树答主
回答量:292
采纳率:0%
帮助的人:232万
展开全部
第二个input改成button:<input type="button" onclick="getData();" value="Submit Comment" />
大致代码:
var d='';
function getData(){
if(d=='') d=$("input[name=name]").val();
if(d.replace(/[ ]/g,"")!=''){
$.get({'realtime.jsp',{table:d}});
})
}
}
追问
其他的大概能明白什么意思,但是--》$.get({'realtime.jsp',{table:d}});

是什么意思呢?是说realtime.jsp向后传递的参数是{table:d}么?但是我realtime.jsp里面不止有一个getData(),我还有其他的ajax的代码,也会向后台传参数,这样会影响吧?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式