Struts2将url作为字符串传递
Struts2 pass url as a string
我使用javascript函数来提交表单,并在javascript函数中指定form.action= "Struts2 url goes here";
下面是我的代码片段:
var form = document.forms['myForm'];
if (form != null) {
var backURL = "ActionB!someMethodB.action?Bparam1=somevalue&Bparam2=somevalue";
form.action="ActionA!someMethodA.action?Aparam1=somevalue&Aparam2=" + backURL;
form.submit();
}
问题是在someMethodA
的作用方法中,Aparam2
的值总是被backURL
中的第一个&号截断。
我试图将backURL
用引号括起来,如form.action="ActionA!someMethodA.action?Aparam1=somevalue&Aparam2='" + backURL + "'";
,但它不起作用。这让我觉得backURL
的值不是作为一个整体来处理的,而是被解析的。
我想知道是否有一种方法可以解决这个问题。
如果你想在url中使用包含特殊字符的参数,它们应该被urlencoded.
var backURL = encodeURIComponent("ActionB!someMethodB.action?Bparam1=somevalue&Bparam2=somevalue");
另外,URL的硬编码值可以在服务器上使用s:url
标签构建。
var backURL = encodeURIComponent('<s:url action="ActionB" method="someMethodB"><s:param name="Bparam1" value="somevalue"/><s:param name="Bparam2" value="somevalue"/></s:url>');
在这种情况下,默认&
被转义为&
,但转义值通常与浏览器一起使用。
相关文章:
- 如何有效地将游戏数据存储在URL查询字符串中
- Datatables查询url字符串:需要regex来修复url解析
- 在字符串中查找所有图像 src URL 并存储在数组中
- 如何从django中的url解析javascript字符串
- 未捕获的InvalidValueError:setIcon:不是字符串;并且没有url属性;并且没有路径属性
- javascript在动态Url中匹配并添加字符串
- 将字符串添加到页面url
- 如何在AngularJS URL中的hashtag(#)前面加上字符串
- 将URL字符串${userid}替换为javascript对象中的实际用户id
- 使用Regex查找URL中的特定字符串
- 从 url 获取字符串值
- Javascript:从拆分字符串 url 加载多个图像
- 如何使用AngularJS将arrray转换为字符串url
- Blob字符串url到PDF
- 查询字符串URL的Javascript URL验证失败
- 将Blob字符串URL转换为Blob,然后转换为base64
- 使用javascript从字符串(URL)中删除子字符串(URL)
- 如何在JavaScript中使用正则表达式从字符串(URL)中删除unicode特殊字符
- 如何替换字符串url
- 在Java脚本中解码UTF16编码的字符串(URL)