繁体   English   中英

某个页面的onclick事件,执行其他页面的POST动作

[英]Onclick event of a certain page, perform POST action of other page

让我用一个场景解释我的问题:
我有网页“ A.jsp”和“ B.jsp”。 “ B.jsp”是具有表单的页面,该表单需要输入字段“用户名”,并且在提交时显示带有特定于用户的信息的特定页面“ C.jsp”。 “ A.jsp”的表中的元素与“ B.jsp”上的“用户名”相对应。 在“ A.jsp”上某个“用户名”的onclick上,我想使用单击的用户名特定信息重定向到“ C.jsp”。

我该如何完成?

我正在使用MVC框架。 只有A.jsp和B.jsp绑定到控制器,C.jsp只是一个视图。 但是,我认为这不是问题,因为这似乎是一个JavaScript问题。

使用原型javascript框架,我尝试了以下操作:
redirectToC = function(pageurl){
var username = document.getElementById(“ user1”)。value;
url = pageurl; //我使用B.jsp作为Pageurl
$ j.ajax({type:'POST',
url:url,数据:“ username =” + username,
成功:功能(要求){
window.location = request;
}
});
}

C.jsp是否仅支持POST-还是也支持GET请求?

  1. 如果是这样,请在“用户名”链接的onClick中,将浏览器的位置(我认为document.location )设置为C.jsp的URL,并将用户名用作GET参数。 由于您是动态生成A.jsp页面,因此可以在生成时将此URL嵌入到页面中
  2. 如果没有,我可以想到的一个坏办法是用用户名实现table元素,将其作为隐藏的form元素,单击后通过javascript提交'form'.submit()
<form id="showUserForm" action="/controller/showUser" method="POST">
    <input type="hidden" id="username" name="username">
</form>

..........

<a onclick="showUser('${users.userName}')" href="#"></a>

..........

<script type="text/javascript">
    function showUser(userName){
        document.getElementById("username").value = userName;
        document.getElementById("showUserForm").submit();
    }
</script>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM