Hai我正在开发应用程序django在哪里我想验证fromdate是不是todate.I我使用以下代码,但它不工作
forms.py
class SearchFilterForm(Form):
fromdate = forms.CharField(widget=forms.TextInput(attrs={'placeholder': 'dd/mm/yy','class':'datefield','readonly':'readonly'}))
todate = forms.CharField(widget=forms.TextInput(attrs={'placeholder': 'dd/mm/yy','class':'datefield','readonly':'readonly'}))
的javascript:
function comparedate(){
var fromdate = document.getElementById("id_fromdate");
var todate = document.getElementById("id_todate");
if(fromdate<todate){
alert("Start date should be less than end date");
return false;
}
}
我从日期选择器获取输入,格式为yy-mm-dd。上面的代码在控制台中没有出现任何错误,但它无法正常工作。
答案 0 :(得分:1)
document.getElementById("id_fromdate")
您正在检索节点。你需要的是值
var fromdate = document.getElementById("id_fromdate").value;
var todate = document.getElementById("id_todate").value;
然后,您需要比较日期,而不仅仅是.value
将检索的字符串。
答案 1 :(得分:1)
var fromdate = document.getElementById("id_fromdate").value;
var todate = document.getElementById("id_todate").value;
您需要转换日期值字符串日期对象,然后您可以比较两个日期对象
http://www.w3schools.com/jsref/jsref_obj_date.asp
Ex. var d1 = new Date();
var d2 = new Date();
if(+d1>+d2)
答案 2 :(得分:0)
试试这个
if (Date.parse(fromDate) > Date.parse(toDate)) {
alert("Invalid Date Range!\nStart Date cannot be after End Date!")
return false;
}