Javascript 防止jquery计算后出现负值
当我计算开始日期和结束日期之间的差异时-结束日期可以输入为“在”开始日期之前-因此允许在“totaldays”中使用负值计算。)我使用了“min”来确保开始日期不能是“今天之前”。) 此外,是否可以隐藏“总天数”结果(计算结果),直到计算完成-即,您不会看到长十进制值:例如-15489.916666 我曾试图自己完成这项工作,但对javascript/jquery的了解非常有限。我会重视任何回应。:-)多谢各位Javascript 防止jquery计算后出现负值,javascript,jquery,html,forms,date-arithmetic,Javascript,Jquery,Html,Forms,Date Arithmetic,当我计算开始日期和结束日期之间的差异时-结束日期可以输入为“在”开始日期之前-因此允许在“totaldays”中使用负值计算。)我使用了“min”来确保开始日期不能是“今天之前”。) 此外,是否可以隐藏“总天数”结果(计算结果),直到计算完成-即,您不会看到长十进制值:例如-15489.916666 我曾试图自己完成这项工作,但对javascript/jquery的了解非常有限。我会重视任何回应。:-)多谢各位 <title>Conference Form</title>
<title>Conference Form</title>
<script type="text/javascript" src="js/jquery.js"></script>
<script type="text/javascript" src="js/jqueryui.js"></script>
<link href="style.css" rel="stylesheet" type="text/css"/>
<link href="css/jqueryui.css" rel="stylesheet" type="text/css" />
<body>
<div id="wrapper">
<div id="header"></div>
<table width="705" border="1" align="left" cellpadding="1">
<form action="" method="get" name="myform">
<tr>
<td width="151"><label>Company Name</label></td>
<td width="158"><input type="text" name="companyname" id="companyname" /></td>
<td width="155">Enquiry Date</td>
<td width="213"><input type="text" name="enquiry_date" id="enquiry_date" class="datepicker" /></td>
</tr>
<tr>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
</tr>
<tr>
<td>Conference Date In</td>
<td><input type="text" name="conference_date_in" id="conference_date_in" class="datepicker" /></td>
<td>Conference Date Out</td>
<td><input type="text" name="conference_date_out" id="conference_date_out" class="datepicker" /></td>
</tr>
<tr>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
</tr>
<tr>
<td>Number of Delegates</td>
<td><input type="text" name="no_of_delegates" id="no_of_delegates" /></td>
<td>Total Days</td>
<td><input type="text" name="total_days" id="total_days" /></td>
</tr>
</form>
</table>
</div>
</body>
</html>
<script type="text/javascript">
$(function() {
$(".datepicker").datepicker({ minDate: -0, maxDate: "+100M +10D",dateFormat: 'dd-mm-yy'})
({
changeMonth: true,
changeYear: true,
});
});
var enquiry_date = $.datepicker.formatDate('dd-mm-yy', new Date());
document.getElementById('enquiry_date').value = enquiry_date;
var calcDate = function() {
var start = $('#conference_date_in').datepicker('getDate');
var end = $('#conference_date_out').datepicker('getDate');
var days = (end - start) / 1000 / 60 / 60 / 24;
document.getElementById('total_days').value = days;
}
$('#conference_date_out').change(calcDate);
$('#conference_date_in').change(calcDate);
</script>
会议形式
公司名称
查询日期
会议日期
会议日期
代表人数
总天数
$(函数(){
$(“.datepicker”).datepicker({minDate:-0,maxDate:“+100M+10D”,日期格式:'dd-mm-yy'})
({
变化月:对,
变化年:是的,
});
});
var查询日期=$.datepicker.formatDate('dd-mm-yy',新日期());
document.getElementById(“查询日期”)。值=查询日期;
var calcDate=函数(){
var start=$('#会议日期''u in')。日期选择器('getDate');
var end=$('#会议日期''u out')。日期选择器('getDate');
风险值天数=(结束-开始)/1000/60/60/24;
document.getElementById('total_days')。值=天;
}
$('会议日期')。更改(calcDate);
$('会议日期')。更改(calcDate);
只需将UI更新包装在if语句中即可
if( days >= 0 ) {
document.getElementById('total_days').value = days;
} else {
alert( "Nice try, but you can't go backwards in time" );
}
搜索数字的绝对值(不带符号的值)时,请使用
Math.abs
$(document).ready(function(){
$(document).ready(function() {
$(".datepicker").datepicker({ minDate: -0, maxDate: "+100M +10D",dateFormat: 'dd-mm-yy', changeMonth: true, changeYear: true });
var enquiry_date = $.datepicker.formatDate('dd-mm-yy', new Date());
$('#enquiry_date').val(enquiry_date);
var calcDate = function() {
var start = $('#conference_date_in').datepicker('getDate');
var end = $('#conference_date_out').datepicker('getDate');
if (start << end) {
var days = (end - start) / 1000 / 60 / 60 / 24;
$('total_days').val(days);
} else {
alert('Day Out must be after the Day In. Try again.');
}
}
$('#conference_date_out').change(calcDate);
$('#conference_date_in').change(calcDate);
});
$(“.datepicker”).datepicker({minDate:-0,maxDate:+100M+10D,dateFormat:'dd-mm-yy',changeMonth:true,changeYear:true});
var查询日期=$.datepicker.formatDate('dd-mm-yy',新日期());
$('查询日期').val(查询日期);
var calcDate=函数(){
var start=$('#会议日期''u in')。日期选择器('getDate');
var end=$('#会议日期''u out')。日期选择器('getDate');
如果(从这里开始)问题到底是什么?具体说明你需要什么帮助……“请为我做”问题没有太多吸引力here@ThinkingSites:我是否将“总天数”相乘通过1?@RobertLevy:我为不够具体而道歉我的问题是:我应该采取什么方法来防止“总天数”中出现负值结果?即,如果结束日期早于开始日期,则结果显示为负数…我该如何防止这种情况发生?我希望这更具体,再次表示歉意