I';我在jsp服务器上收到了来自android应用程序的HTTP帖子,我如何将该数据传递到Javascript函数中

I';我在jsp服务器上收到了来自android应用程序的HTTP帖子,我如何将该数据传递到Javascript函数中,javascript,android,jsp,Javascript,Android,Jsp,我的jsp文件中有以下内容: <form name='form1'> <input type='hidden' name=NAME value=<%=request.getParameter("name")%> /> </form> 它可以工作,当我通过android提交它时,我得到了“name”,但随后它又恢复为null。我如何让它保持“名字” 此外,我将request.getParameter放入表单中,以便能够使用“document.f

我的jsp文件中有以下内容:

<form name='form1'>
<input type='hidden' name=NAME value=<%=request.getParameter("name")%> />
</form>

它可以工作,当我通过android提交它时,我得到了“name”,但随后它又恢复为null。我如何让它保持“名字”

此外,我将request.getParameter放入表单中,以便能够使用“document.form1.NAME.value”访问js代码中的值

进一步澄清: 当我在服务器控制台中打印“request.getParameter”给我的内容时,我通过Android应用程序上的提交按钮获得发送的值,然后是两个空值

所以我得到:

实际价值

空的

空的

看起来jsp运行了三次??并将request.getParameter设置回null

工作流程:

我有一个android应用程序,当您单击submit按钮时,它会将用户输入的任何字符串(在应用程序的文本框中)发送到一个带有jsp文件的Tomcat服务器

然后,我的jsp文件读取请求

我的javascript需要字符串(它接受字符串,修改它,然后用修改后的字符串显示警报)

是否因为我在发送请求后打开jsp文件,所以它找不到以前的请求

HttpClient-HttpClient=newdefaulthttpclient();
HttpPost=newhttppost(“带有my.jsp的Tomcat服务器”);
EditText名称框=(EditText)findViewById(R.id.name);
字符串n=nameBox.getText().toString();
尝试
{
List nameValuePairs=新的ArrayList(1);
添加(新的BasicNameValuePair(“名称”,n));
setEntity(新的UrlEncodedFormEntity(nameValuePairs));
HttpResponse response=httpclient.execute(httppost);
}
捕获(客户端协议例外e)
{
}
捕获(IOE异常)
{
}
String url=“相同的服务器和相同的.jsp文件”;
Intent webIntent=新意图(Intent.ACTION\u视图);
setData(Uri.parse(url));
startActivity(webIntent);

尝试在以下内容周围加上适当的引号:

<form name='form1'>
  <input type='hidden' name='NAME' value='<%= request.getParameter("name") %>' />
</form>

由于这是您设置名称-值对的请求,因此将设置JavaScript变量。

您在这方面进行了哪些研究?我尝试了很多不同的方法,包括通过js函数(函数(${httppostrequestparameter})中的参数传递数据。我见过使用Ajax的人,但我尽量不这么做,因为我只传递了三个字符串。提交后,这是一个新请求,不会有以前请求中的参数。你能解释一下你的工作流程吗?jsp是否提交给自己?流程是什么?Javascript是否进行了重定向?我不知道为什么我的服务器会收到三个请求……这可能只是关于jsp如何加载的问题吗?现在再次检查我的android代码,但我认为我只提交了一个请求..仍然给我空值,但感谢你提醒我引号。引号只有在参数中有空格时才有意义。
<form name='form1'>
  <input type='hidden' name='NAME' value='<%= request.getParameter("name") %>' />
</form>
var name = '<%= request.getParameter ("name") %>';
HttpResponse response = httpclient.execute(httppost);