javascript - 将变量从 JavaScript 传递到 Action 类

标签 javascript struts

我有一个 view.jsp,并且我在此 JSP 中的 JavaScript 函数内声明了一个变量 (parentUrl)。我想将此变量传递给我的 Java 类 (MyAction)。这是我的代码

function editAddress(){ 
    var parentUrl=document.referrer;
    request.setAttribute("url", parentUrl);
    document.forms[0].action = "path of the Myaction class";
    document.forms[0].submit();         
}

单击 view.jsp 中的“保存”按钮后,将调用上述函数,将我的请求转发到 MyAction 类,然后 MyAction 类将请求转发到另一个 jsp 页面。我想传递要在 MyAction 类中传递的parentUrl 变量,以便我可以使用该变量的值来编写一些逻辑。以下是从请求中检索变量值的 myAction 类代码:

String parentURL = (String)request.getParameter("url"); 

基本上我想从请求来源处获取父页面的 URL。这就是我使用 document.referrer 函数的原因。

我的问题是,当我在函数 editAddress() 中添加这两行时,我的“保存”按钮停止工作,并且没有导航到另一个页面。我不知道为什么会这样。

var parentUrl=document.referrer;
request.setAttribute("url", parentUrl);

请让我知道将此parentUrl 变量从JavaScript 传递到\MyAction 类的任何其他更好方法。谢谢!!

最佳答案

request.setAttribute() 不是 JavaScript 方法,因此您不能以这种方式使用它。相反,请在表单中声明一个隐藏字段并将其值设置为“提交”。

<form>
...
<input type="hidden" name="parentURL">
...
</form>

function editAddress(){ 
    var parentUrl=document.referrer;
    document.forms[0].parentURL.value=parentUrl;
    document.forms[0].action = "path of the Myaction class";
    document.forms[0].submit();         
}

在操作类中声明 parentURL(getter/setter)以访问其值

关于javascript - 将变量从 JavaScript 传递到 Action 类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10954611/

相关文章:

javascript - 用换行符替换字符

javascript - 处理图片较多的网页

java - DisplayTag 的动态链接排序不规则

jsp - 如何使用 Struts <logic :iterate> 显示行号

java - 如何通过自定义Struts类型转换器转换列表项的字段?

exception - 加载文件 struts-default.xml 时捕获异常

javascript - 更新 .php 页面的部分内容

javascript - jQuery Div滚动功能: Issue in IE

javascript - 进行 API 调用等待

java - 使用 gzip 压缩组件 - Java EE