मेरा हेडर.जेएसपी है
<%@ 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>
इसलिए मैं स्थानीयहोस्ट द्वारा होमपेज पर जाता हूं: 8080 / ProjectCtxt / mvc / template
उसके बाद मैं संख्या टेक्स्ट फ़ील्ड में कुछ मान दर्ज करता हूं और एंटर दबाता हूं, फिर यूआरएल लोकलहोस्ट बन जाता है: 8080 / ProjectCtxt / mvc / search / s? RegNo = 123। अब अगर मैं फिर से एक और रजिस्टर नंबर दर्ज करता हूं तो यूआरएल बन जाता है
स्थानीय होस्ट: 8080 / ProjectCtxt / MVC / खोज / एस / खोज / एस Regno = 124
एक अतिरिक्त खोज / एस जोड़ा जाता है। मैं अपाचे टाइल्स का उपयोग कर रहा हूं।
"- // अपाचे सॉफ्टवेयर फाउंडेशन // डीटीडी टाइल्स विन्यास 2.1 // एन"
"Http://tiles.apache.org/dtds/tiles-config_2_1.dtd">
<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>
मेरा कंट्रोलर नंबर लौटाता है हर सफल खोज के लिए परिणाम बनाया गया है।
उत्तर:
उत्तर № 1 के लिए 1उपयोग <form method="POST" action="search/s" id="number">
के बजाय
<form method="get" action="search/s" id="number">
.
GET
यूआरएल में खेतों में विलय करें। परंतु POST
अनुरोध के शरीर में क्षेत्र भेजता है। और तदनुसार अपने नियंत्रक को संशोधित करें उदा। @RequestMapping(value="/new", method = RequestMethod.POST)
अधिक जानकारी के लिए एक नज़र डालें http://www.w3schools.com/tags/ref_httpmethods.asp