调试JavaScript和servlet
我对编程相当陌生。这道题是为考试做准备的。我有一个servlet,它连接到我的MySQL数据库。我有一个JavaScript 我有两个日历,你可以选择“从”日期-“到”日期。如果我从2014-03-06-2014-03-10中选择fx,我希望打印出我在此时间间隔内工作的小时数。这意味着我的servlet正在从我的MySQL数据库中获取“Allday\u hours”列。问题是每次我从javascript中选择一个日期时,它只返回Allday_hours中的所有小时数。这意味着它将贯穿所有列,而不是我选择的日期 有人能看出我做错了什么吗 Javascript:调试JavaScript和servlet,javascript,mysql,servlets,Javascript,Mysql,Servlets,我对编程相当陌生。这道题是为考试做准备的。我有一个servlet,它连接到我的MySQL数据库。我有一个JavaScript 我有两个日历,你可以选择“从”日期-“到”日期。如果我从2014-03-06-2014-03-10中选择fx,我希望打印出我在此时间间隔内工作的小时数。这意味着我的servlet正在从我的MySQL数据库中获取“Allday\u hours”列。问题是每次我从javascript中选择一个日期时,它只返回Allday_hours中的所有小时数。这意味着它将贯穿所有列,而不
<form>
<input id="startDate"/>
<input id="endDate"/>
</form>
<div id="startresult"></div>
<div id="endresult"></div>
<script>
$(function(){
$("#startDate").datepicker({
dateFormat: 'yy-mm-dd',
onSelect: function(dateText,inst){
$('.selected-date').html(dateText);
$.ajax({
url: "../getHoursSQL",
type: "post",
data: JSON,
success: function(data){
start: $("#startDate").val();
alert("success");
$("#startresult").html(data);
},
error:function(){
alert("failure");
$("#startresult").html('there is error while submit');
}
});
}
});
});
$(function(){
$("#endDate").datepicker({
dateFormat: 'yy-mm-dd',
onSelect: function(dateText,inst){
$('.selected-date').html(dateText);
$.ajax({
url: "../getHoursSQL",
type: "post",
data: JSON,
success: function(data){
end: $("#endDate").val();
alert("success");
$("#endresult").html(data);
},
error:function(){
alert("failure");
$("#result").html('there is error while submit');
}
});
}
});
});
</script>
首先,您忘记将startDate和endData从javascript代码发送到servlet。您可以通过更改ajax方法参数的“data”成员来实现这一点 您还应该从servlet中的请求获取它,如下所示
String startDate = req.getParameter("startDate");
String endDate= req.getParameter("endDate");
然后,您应该在preparedStatement中为您的输入提供值
pst.setXXX(1,startDate);
pst.setXXX(2,endDate);
我希望这些信息能帮助您解决问题我删除了我的评论,因为它在评论中不可读。非常感谢您的时间和回答。在数据中可能是这样的:data:{start:$(“#startDate”).val(),end:$(“#endDate”).val()}非常感谢您的回答。我刚刚编辑了我的代码。会是这样吗?
pst.setXXX(1,startDate);
pst.setXXX(2,endDate);