求救菜鸟!jsp页面 给struts的action传值问题
在jsp里面有个变量a,我想把a的值通过<a href="login!showAll?name=a ">的方式提交给action。action中已经有变量name的get和set方法,请问?后面该怎么写才能接受到变量a的值? --------------------编程问答-------------------- 请问?后面该怎么写才能接受到变量a的值? --------------------编程问答--------------------就是怎么才能把这个变量a给action额。。表达不是很清楚,就是问号后面的name=...怎么写? --------------------编程问答-------------------- 后台action里面直接就可以获取啊,不需要咋写的。
你直接syso(name)
输出的就是a
如果是中文的话,则需要转码。 --------------------编程问答--------------------
a是变量。每次点击的时候都不一样额,比如第一次a="tom";第二次a="join";..我不是想传a,是想动态传a的值怎么弄额? --------------------编程问答-------------------- 前台jsp:<a href="login!showAll?name=a ">
后台:
public class Login extends ActionSupport{
public Stirng showAll{
//TODO
Stirng name = request.getParameter("name");
}
}
web.xml配置文件中添加:
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
struts.xml配置文件:
<struts>
<package name="default" extends="struts-default">
<action name="login" class="包.类名" method="showAll">
<result name="success">/success.jsp</result>
<result name="error">/error.jsp</result>
</action>
</package>
</struts> --------------------编程问答-------------------- 上面的答案好像不够专业,
如果要改变变量a,只要在jsp界面搞一个文本框即可。。 --------------------编程问答-------------------- 楼主是想要name的值是动态的,如果你使用struts的话,那么这个值是你自己需要从一个action中传递过去的,比如你有一个转向页面的action中有一个name属性并有值,那么你就可以使用el或ognl表示示来获取这个值了;如:
<a href="login!showAll?name=<%=name%> "> --------------------编程问答-------------------- 正解、 --------------------编程问答-------------------- Stirng name = request.getParameter("name"); --------------------编程问答-------------------- LS正解。。完全不需要 get set方法的。。。中文注意转码 --------------------编程问答-------------------- 这么个小问题 纠结半天 --------------------编程问答-------------------- 每次点击时候,用JS得到a的值,然后在拼凑URL传给超链接,大概思路是这样 --------------------编程问答-------------------- private HttpServletRequest request=ServletActionContext.getRequest();
Stirng name = request.getParameter("name"); --------------------编程问答-------------------- JS
function toPage(name){
location.href="login.action?name="+name;
}
action里面 如果是struts1 则用request.getParameter("name");
如果是struts2 则声明一个name的属性给get/set方法即可。
页面就直接调用这个JS,然后把你动态变化的值传到js里面就可以了。
只提供一个实现方式,具体要看楼主自己去实现了... --------------------编程问答-------------------- action里面有name的get和set方法,直接用name这个参数就行了 --------------------编程问答-------------------- 如果你的变量a是通过js取得的那就用js拼一个url
function fun_url(){
var a = "xxxx";
window.location.href = "login!showAll?name="+a;
}
<a href="javascript:fun_url()">
如果你的变量a是jsp的那就直接 <a href="login!showAll?name=<%=a%> "> --------------------编程问答--------------------
补充:Java , Java EE