![](/img/trans.png)
[英]JavaScript - passing variables through the URL: #var=val vs ?var=val
[英]Passing an HTML/Javascript datepicker val to a java servlet using GET: do I have to use a hidden var?
我想通過jquery的datepicker獲取用戶輸入的日期,並將其發送到Java servlet,然后顯示它。 我以前的方法使用HTML下拉列表,但我想使用js選擇日期。 僅使用getParameter(“ date”)會產生null。 有人問過類似的問題,我了解的唯一解決方案是使用隱藏變量。 但是我必須在這里使用一個隱藏變量沒有任何意義。 為什么傳遞dateValue有效但不能傳遞日期? 還是有一種直接在HTML表單部分中傳遞日期的方法?
相關的Java Servlet代碼:
String stringDate = req.getParameter("date");
out.println(stringDate);
Javascript / HTML代碼:
<HTML>
<HEAD>
<TITLE>
TEST
</TITLE>
<link href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.10.4/themes/smoothness/jquery-ui.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.10.4/jquery-ui.min.js"></script>
<script>
$(document).ready(function() {
$("#datepicker").datepicker({
changeMonth: true,
changeYear: true,
onSelect: function(){
var date = $(this).datepicker('getDate');
document.getElementById("dateValue").value=date;
}
});
});
</script>
</HEAD>
<BODY BGCOLOR="WHITE">
<TABLE BORDER="2" CELLPADDING="2">
<TR><TD WIDTH="275">
<FORM METHOD="GET" ACTION="myservlet">
<input id="datepicker"/>
<input type="hidden" name="dateValue" id="dateValue">
<INPUT TYPE="SUBMIT" VALUE="Calculate dates">
<INPUT TYPE="RESET">
</FORM>
</BODY>
</HTML>
您忘記命名輸入字段了。
試試看,您可以使用req.getParameter("pickedDate");
檢索值req.getParameter("pickedDate");
如您所見,不需要隱藏的輸入,然后就不需要對select()進行任何操作
<HTML>
<HEAD>
<TITLE>
TEST
</TITLE>
<link href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.10.4/themes/smoothness/jquery-ui.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.10.4/jquery-ui.min.js"></script>
<script>
$(document).ready(function() {
$("#datepicker").datepicker({
changeMonth: true,
changeYear: true
});
});
</script>
</HEAD>
<BODY BGCOLOR="WHITE">
<TABLE BORDER="2" CELLPADDING="2">
<TR><TD WIDTH="275">
<FORM METHOD="GET" ACTION="myservlet">
<input id="datepicker" name="pickedDate"/>
<INPUT TYPE="SUBMIT" VALUE="Calculate dates">
<INPUT TYPE="RESET">
</FORM>
</BODY>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.