我的代码应该减去日期(enddate-startdate),但没有发生任何事情,也无法找出问题所在。
<script type="text/javascript">
function subtractDate()
{
var sDate = Date.parse("<%=txtStartDate.Text%>");
var eDate = Date.parse("<%=txtEndDate.Text%>");
var resultDate = document.getElementById("<%=txtnumberOfDaysCovered.ClientID%>")
if (document.getElementById(sDate) < document.getElementById(eDate)) {
var timeDiff = eDate.Subtract(sDate);
resultDate = Math.floor(timeDiff / (1000 * 60 * 60 * 24));
}
}
</script>
我已经尝试将其称为
protected void txtStartDate_TextChanged(object sender, EventArgs e)
{
// SubtractDateStartDateChange();
Page.ClientScript.RegisterStartupScript(this.GetType(), "CallMyFunction", "subtractDate(this.Id)", true);
}
protected void txtEndDate_TextChanged(object sender, EventArgs e)
{
//SubtractDate();
Page.ClientScript.RegisterStartupScript(this.GetType(), "CallMyFunction", "subtractDate(this.Id)", true);
}
答案 0 :(得分:2)
您从代码后面的代码传递subtractDate(this.Id)
,但函数subtractDate()不期望客户端上的任何参数。我认为,由于这个功能不起作用。function subtractDate()
期待一个Id参数,用一个参数改变函数。
希望函数如下工作。
function subtractDate(var id)
{
var sDate = Date.parse("<%=txtStartDate.Text%>");
var eDate = Date.parse("<%=txtEndDate.Text%>");
var resultDate = document.getElementById("<%=txtnumberOfDaysCovered.ClientID%>")
if (document.getElementById(sDate) < document.getElementById(eDate)) {
var timeDiff = eDate.Subtract(sDate);
resultDate = Math.floor(timeDiff / (1000 * 60 * 60 * 24));
}
}