我是Java脚本的新手,所以这个问题可能有点基础。我在asp.net上开发了一个Web应用程序,我有一个日历。因此,每当我选择一个日期时,它会自动进入控制器和模型。
问题是我想在单击按钮时执行该事件,而不是在单击日期时执行。所以这是我目前的代码:
<div id="datePicker">
<link rel="stylesheet" href="//code.jquery.com/ui/1.11.4/themes/smoothness/jquery-ui.css">
</div>
<script src="//code.jquery.com/jquery-1.10.2.js"></script>
<script src="//code.jquery.com/ui/1.11.4/jquery-ui.js"></script>
<p>@Resources.Resources.Date: <input type="text" id="datepicker"></p>
<script name="select_date" id="select_date">
$(function selectDate() {
intDate = Date;
$("#datepicker").datepicker({
defaultDate: "+1w",
changeMonth: true,
changeYear: true,
numberOfMonths: 1,
minDate: "01/01/2008",
onClose: function (select_date) {
//console.log(select_date);
var date = $('#datepicker').val().toString();
$.ajax('NewspaperDate', {
data: {
strDate: date
},
success: function (data, textStatus, jqXHR) {
//this will happen on success of request
$('#DataNewspaper').html(data);
// window.location = "NewspaperDate?strDate=" + date;
},
error: function () {
console.log("error handler when ajax request fails... ");
},
});
}
});
});
我知道我需要更改onClose
并从按钮调用该功能,但我无法使其正常工作。
谢谢!
答案 0 :(得分:1)
没什么大问题。只需创建一个按钮并向其添加click
事件侦听器。
<button class="action" type="button">send</button>
您可以jQuery
使用它,您实际包含在页面中的内容:
$(function() {
// init datepicker
$("#datepicker").datepicker({
defaultDate: "+1w",
changeMonth: true,
changeYear: true,
numberOfMonths: 1,
minDate: "01/01/2008"
});
// create a button event
$("button.action").click(function() {
$.ajax("NewspaperDate", {
data: {
strDate: $("#datepicker").val().toString()
},
success: function(response) {
$("#DataNewspaper").html(response);
}
});
});
});
并提示:您应该将代码包装在jQuery就绪状态中,就像我上面的例子一样。
$(function() {
// do your work, e.g use plugins or create event listener ...
});