Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/347.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何从url中删除多余的表单操作标记?_Java_Html_Spring_Spring Mvc_Tiles2 - Fatal编程技术网

Java 如何从url中删除多余的表单操作标记?

Java 如何从url中删除多余的表单操作标记?,java,html,spring,spring-mvc,tiles2,Java,Html,Spring,Spring Mvc,Tiles2,下面是我的header.jsp <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <head> <script src="http://code.jquery.com/jquery.min.js"></script> <style> #mycontainer, h1, h3

下面是我的header.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>

 <head>
 <script src="http://code.jquery.com/jquery.min.js"></script>
     <style>
        #mycontainer, h1, h3 {
            text-align:center;
        }
        form {
            display:inline-block;
        }       
    </style>
 </head>

<div id="mycontainer">  
    <form method="get" action="search/s" id="number">
        <div style="text-align: center;">
            <input  type="text" id="regNo" name="regNo" size="30" maxLength="50" placeholder="Enter Register Number"> OR       
        </div>      
    </form>           

    <form method="get" action="search/l" id="name">                      
        <input  type="text" id="studentName" name="studentName" size="30" maxLength="50" placeholder="Enter Student Name"></input>          
    </form>                             
</div>             

<div style="text-align: center;">
    <input id="inputFields" type="button" value="Search" />
</div>

<script>
    $(document).ready(function(){
        $('#inputFields').click(function(event){
            if (document.getElementById('regNo').value !=""){
                $("#number").submit();

            }else if(document.getElementById('studentName').value !=""){
                $("#name").submit();
            }
        });
    });    
</script>

#霉素容器,h1,h3{
文本对齐:居中;
}
形式{
显示:内联块;
}       
或
$(文档).ready(函数(){
$(“#输入字段”)。单击(函数(事件){
if(document.getElementById('regNo')。值!=“”){
$(“#编号”).submit();
}else if(document.getElementById('studentName')。value!=“”){
$(“#名称”).submit();
}
});
});    
所以我通过localhost转到主页:8080/ProjectCtxt/mvc/template

之后,我在数字文本字段中输入一些值并按enter键,然后url变成localhost:8080/ProjectCtxt/mvc/search/s?regNo=123。现在,如果我再次输入另一个注册号,url将变为

localhost:8080/ProjectCtxt/mvc/search/s/search/s?regNo=124

将添加额外的搜索。 我正在使用apachetiles

“-//Apache软件基础//DTD Tiles配置2.1//EN”
"http://tiles.apache.org/dtds/tiles-config_2_1.dtd“>


我的控制器在每次成功搜索后返回numberResult。

使用
而不是


GET
合并url中的字段。但是
POST
发送请求正文中的字段。并相应地修改控制器,例如
@RequestMapping(value=“/new”,method=RequestMethod.POST)
有关更多详细信息,请查看确定。现在,当我进行第二次搜索时,我没有看到url后面的name=value,但我看到它是localhost:8080/ProjectCtxt/mvc/search/search/s,我得到404错误。如果您使用的是spring mvc,那么您需要将信息放在方法级别,例如@RequestMapping(value=“/new”,method=RequestMethod.POST)1)是的,我只放在方法级别。我将“search/s”重命名为“number”,将“search/l”重命名为name,当我使用POST时,它正在工作。但我不知道为什么我使用search/s和search/l时它不起作用。你能解释一下吗。我在学春天。2) 你能回答这个问题吗。你能回答这个问题吗?
<tiles-definitions>
    <definition name="template" template="/WEB-INF/jsp/template.jsp">
        <put-attribute name="title" value=""/>
        <put-attribute name="header" value="/WEB-INF/jsp/header.jsp" />
        <put-attribute name="body" value="/WEB-INF/jsp/ads.jsp  "/>
        <put-attribute name="center" value="/WEB-INF/jsp/ads.jsp" />
        <put-attribute name="footer" value="/WEB-INF/jsp/footer.jsp" /> 
    </definition>

    <definition name="header" extends="template">
        <put-attribute name="title" value="" />  
        <put-attribute name="body" value="/WEB-INF/jsp/ads.jsp" />  
    </definition>

    <definition name="numberResult" extends="template">
        <put-attribute name="title" value="" />  
        <put-attribute name="body" value="/WEB-INF/jsp/numberResult.jsp" />  
    </definition>

    <definition name="nameResult" extends="template">
        <put-attribute name="title" value="" />  
        <put-attribute name="body" value="/WEB-INF/jsp/nameResult.jsp" />  
    </definition>

    <!-- <definition name="bottom" extends="new.template">
        <put-attribute name="bottom" value="/mvc/jsp/ads.jsp" />
        <put-attribute name="bottom" value="/WEB-INF/jsp/ads.jsp" />
    </definition> -->

</tiles-definitions>