Javascript 如果脚本中没有包含警报,jQuery不会返回结果
我有jqueryajax函数来获取倒计时对象的日期值。 该代码工作正常。分析日期以倒计时时,仅在设置日期之前将警报插入倒计时方法 以下是脚本:Javascript 如果脚本中没有包含警报,jQuery不会返回结果,javascript,jquery,Javascript,Jquery,我有jqueryajax函数来获取倒计时对象的日期值。 该代码工作正常。分析日期以倒计时时,仅在设置日期之前将警报插入倒计时方法 以下是脚本: <script type="text/javascript"> $(document).ready(function () { debugger; var austDay = new Date(); var currDay = new Date();
<script type="text/javascript">
$(document).ready(function () {
debugger;
var austDay = new Date();
var currDay = new Date();
$.ajax({
type: 'GET',
url: '/Service/Utility/GetDownDate',
success: function (data) {
austDay = new Date(parseInt(data.newDate.substr(6)));
//alert(austDay);
}
});
austDay = new Date(austDay.getFullYear(), 1 - 1, 26);
alert(austDay);
$('#defaultCountdown').countdown({ until: austDay });
$('#year').text(austDay.getFullYear());
});
</script>
$(文档).ready(函数(){
调试器;
var austDay=新日期();
var currDay=新日期();
$.ajax({
键入:“GET”,
url:“/Service/Utility/GetDownDate”,
成功:功能(数据){
austDay=新日期(parseInt(data.newDate.substr(6));
//警报(奥斯汀日);
}
});
austDay=新日期(austDay.getFullYear(),1-1,26);
警报(奥斯汀日);
$('#defaultCountdown')。倒计时({until:austDay});
$('#year').text(austDay.getFullYear());
});
请帮帮我。
谢谢,因为ajax是异步的,所以您需要使用success事件来获取数据。像这样试试
<script type="text/javascript">
$(document).ready(function () {
debugger;
var austDay = new Date();
var currDay = new Date();
$.ajax({
type: 'GET',
url: '/Service/Utility/GetDownDate',
success: function (data) {
austDay = new Date(parseInt(data.newDate.substr(6)));
//alert(austDay);
austDay = new Date(austDay.getFullYear(), 1 - 1, 26);
$('#defaultCountdown').countdown({ until: austDay });
$('#year').text(austDay.getFullYear());
}
});
});
</script>
$(document).ready(function () {
debugger;
var austDay = new Date();
var currDay = new Date();
$.ajax({
type: 'GET',
url: '/Service/Utility/GetDownDate',
success: function (data) {
austDay = new Date(parseInt(data.newDate.substr(6)));
austDay = new Date(austDay.getFullYear(), 1 - 1, 26);
$('#defaultCountdown').countdown({ until: austDay });
$('#year').text(austDay.getFullYear());
}
});
$(文档).ready(函数(){
调试器;
var austDay=新日期();
var currDay=新日期();
$.ajax({
键入:“GET”,
url:“/Service/Utility/GetDownDate”,
成功:功能(数据){
austDay=新日期(parseInt(data.newDate.substr(6));
//警报(奥斯汀日);
austDay=新日期(austDay.getFullYear(),1-1,26);
$('#defaultCountdown')。倒计时({until:austDay});
$('#year').text(austDay.getFullYear());
}
});
});
实际上,这并不是在变魔术。如果您发出警报,成功事件将在用户单击“确定”按钮之前的更短时间内发生 试试这样的东西
<script type="text/javascript">
$(document).ready(function () {
debugger;
var austDay = new Date();
var currDay = new Date();
$.ajax({
type: 'GET',
url: '/Service/Utility/GetDownDate',
success: function (data) {
austDay = new Date(parseInt(data.newDate.substr(6)));
//alert(austDay);
austDay = new Date(austDay.getFullYear(), 1 - 1, 26);
$('#defaultCountdown').countdown({ until: austDay });
$('#year').text(austDay.getFullYear());
}
});
});
</script>
$(document).ready(function () {
debugger;
var austDay = new Date();
var currDay = new Date();
$.ajax({
type: 'GET',
url: '/Service/Utility/GetDownDate',
success: function (data) {
austDay = new Date(parseInt(data.newDate.substr(6)));
austDay = new Date(austDay.getFullYear(), 1 - 1, 26);
$('#defaultCountdown').countdown({ until: austDay });
$('#year').text(austDay.getFullYear());
}
});
原因
您正在调用ajax,它是异步工作的,因此您的倒计时()
将在ajax完成之前执行。
当您发出警报时,它将有时间完成ajax调用,直到您单击“确定”按钮,然后执行
倒计时()
“控制台中有错误吗?”,我认为您应该在document.ready函数之外声明austDay
。success:
已弃用,您应该改用.done
。请参阅@DHS:ajax的success
选项(上面使用的一个选项)没有被弃用。jqXHR
对象(ajax返回的内容)上的success
方法已被弃用,取而代之的是Promise
方法。machan倒计时不起作用。这里只有警报问题。倒计时是日期类型的倒计时。看起来Anoop首先完成了比赛。alert(data.newDate.substr(6))查看成功后的结果