Javascript:比较if中的两个日期
功能卡应返回某场音乐会的卡。 但前提是音乐会的日期与datepicker函数选择的日期匹配。因此,如果我选择2018年6月22日,我应该看到音乐会卡片,因为日期是相同的。但现在它不起作用,因为:Javascript:比较if中的两个日期,javascript,Javascript,功能卡应返回某场音乐会的卡。 但前提是音乐会的日期与datepicker函数选择的日期匹配。因此,如果我选择2018年6月22日,我应该看到音乐会卡片,因为日期是相同的。但现在它不起作用,因为: if(document.getElementById("datepicker").value == this.date) 在顶部拾取输入值,该值未定义,因此不显示任何内容。所以我想我必须首先调用函数datepicker(),但我不知道怎么做 以下是我使用的代码: <input type="tex
if(document.getElementById("datepicker").value == this.date)
在顶部拾取输入值,该值未定义,因此不显示任何内容。所以我想我必须首先调用函数datepicker(),但我不知道怎么做
以下是我使用的代码:
<input type="text" id="datepicker"/></div>
<div id="corpo1"></div>
$(function()
{
$("#datepicker").datepicker({
showOn: "button",
buttonText: "Select date",
buttonImage: "https://i.imgur.com/cvkNy5G.png"
});
});
function Concert(id, name, date, price)
{
this.id = id;
this.name = name;
this.date = date;
this.price = price;
this.card = function()
{
if(document.getElementById("datepicker").value == this.date)
return "<span class='concert'>"+this.name+" "+this.date+"</span>";
}
}
var concerti = [ new Concert(1,"The Fame Ball","06/22/2018",50) ];
function showcard(f)
{
var ris = "";
for(var i in concerti)
{
ris+=concerti[i].card();
}
document.getElementById('corpo1').innerHTML=ris;
}
$(函数()
{
$(“#日期选择器”)。日期选择器({
展示:“按钮”,
按钮文字:“选择日期”,
按钮尺寸:“https://i.imgur.com/cvkNy5G.png"
});
});
功能音乐会(id、名称、日期、价格)
{
this.id=id;
this.name=名称;
this.date=日期;
这个价格=价格;
this.card=函数()
{
if(document.getElementById(“datepicker”).value==this.date)
返回“+this.name+”+this.date+”;
}
}
var concerti=[新音乐会(1,“成名舞会”,“2018年6月22日”,50)];
功能展示卡(f)
{
var ris=“”;
for(协奏曲中的第一变奏曲)
{
ris+=协奏曲[i].card();
}
document.getElementById('corpo1')。innerHTML=ris;
}
有谁能帮忙吗?我想你的问题是你的
showcard
代码没有运行,至少没有在正确的时间运行。将以下内容添加到Javascript中应该可以解决这个问题
$("#datepicker").change(showcard);
当用户选择新日期时,当文本框的文本更改时,它将导致showcard功能运行。如果您没有选择音乐会的日期,您可能会遇到显示“undefined”(未定义)的问题,因为如果日期不匹配,showcard函数将不返回任何内容(变为“undefined”)。您可以通过添加
return''来修复此问题代码>到函数末尾,强制它返回空字符串,但没有显示任何内容。我认为您的问题是,showcard
代码没有运行,至少没有在正确的时间运行。将以下内容添加到Javascript中应该可以解决这个问题
$("#datepicker").change(showcard);
当用户选择新日期时,当文本框的文本更改时,它将导致showcard功能运行。如果您没有选择音乐会的日期,您可能会遇到显示“undefined”(未定义)的问题,因为如果日期不匹配,showcard函数将不返回任何内容(变为“undefined”)。您可以通过添加return''来修复此问题将代码>添加到函数末尾,强制它返回空字符串,但不显示任何内容。尝试以下解决方案:
关键变化如下:
$("#datepicker").datepicker({
showOn: "button",
buttonText: "Select date",
buttonImage: "https://i.imgur.com/cvkNy5G.png",
onSelect: showcard
});
jqueryui建议使用onSelect
事件。文件
允许您在选择日期选择器时定义自己的事件。
函数将所选日期作为文本和日期选择器接收
实例作为参数。这是指关联的输入字段
尝试以下解决方案:
关键变化如下:
$("#datepicker").datepicker({
showOn: "button",
buttonText: "Select date",
buttonImage: "https://i.imgur.com/cvkNy5G.png",
onSelect: showcard
});
jqueryui建议使用onSelect
事件。文件
允许您在选择日期选择器时定义自己的事件。
函数将所选日期作为文本和日期选择器接收
实例作为参数。这是指关联的输入字段
因此,我最初的想法是,这可能是一个格式化问题,即datepicker
插件将日期格式化为与硬编码日期格式不同的格式?无论如何,如果希望进行可靠的日期比较,请使用实际日期实例(数字)而不是字符串…。value
是字符串。请尝试添加此console.log(document.getElementById(“datepicker”).value);console.log(这个日期);因此,我最初的想法是,这可能是一个格式化问题,即datepicker
插件将日期格式化为与硬编码日期格式不同的格式?无论如何,如果希望进行可靠的日期比较,请使用实际日期实例(数字)而不是字符串…。value
是字符串。请尝试添加此console.log(document.getElementById(“datepicker”).value);console.log(这个日期);萨克斯!!:)现在可以了。令人惊讶的是,仅仅一句话就能改变一切。塔克斯阿加因塔克斯!!:)现在可以了。令人惊讶的是,仅仅一句话就能改变一切。塔克斯又来了