说明
在实现前端的时候,我们有些需求是这样的:
1. 需要表单来向服务端get或post参数
2. 表单数据不只一个
3. 需要根据不同的提交的数据参数、类型等信息提交到不同
思路
把请求放到后端处理是可以的,但是显然这样处理会增加系统的复杂度,而且还容易将后端的逻辑搞乱,更简单的做法是在前端嵌入jQuery,利用jQuery来处理不同的跳转问题
<script type="text/javascript">$("form").submit(function (e) {var $cid = $("#cid").val();if ($cid != "") {e.preventDefault();window.location.href = "/contest/" + $cid;return;}});</script>
$("form")
会获取name为form的节点,那么需要给form添加属性:
<form name="form" method="get">
然后获取到id的值,判断其是否为空,如果不为空,则直接跳转到相应链接。
其中,e.preventDefault();函数会阻止表单的提交,因为就算设置了location.href为跳转,表单仍然会继续提交。