救急!!!!关于javascript问题

莫舍桥西 2012-01-19 03:26:00
点击查询按钮文本框的值等于“输入开始时间……”,“输入结束时间……”
点击查询不提示:“请选择统计开始时间”,“请选择统计结束时间”
请教大侠们哪里有问题代码!!!

<script language="javascript">
/*清空文本框*/
function cleartext()
{
$("#div1 input[type=text]").val("");
}
/*文本框提示字符*/
$(document).ready(function() {
//遍历div中的文本
$('#div1 input[title]').each(function() {
//如果文本为空
if($(this).val() == '') {
//赋值title
$(this).val($(this).attr('title'));
}
//获取焦点信息
$(this).focus(function() {
//如果文本值等于title
if($(this).val() == $(this).attr('title'))
{
$(this).val('').addClass('focused');
}
});
//失去焦点
$(this).blur(function() {
//如果文本值等于空
if($(this).val() == '')
{
$(this).val($(this).attr('title')).removeClass('focused');
}
});
});
//查询按钮
$('#btnSearch').click(function(){
var starttime=$('#txtBeginDate').val();
var endtime=$('#txtEndDate').val();
/*分解开始时间*/
var startMonth =eval( starttime.substring(5,starttime.lastIndexOf("-")));
var startDay =eval( starttime.substring(starttime.length,starttime.lastIndexOf("-")+1));
var startYear =eval( starttime.substring(0,starttime.indexOf("-")));

/*分解结束时间*/
var endMonth =eval( endtime.substring(5,endtime.lastIndexOf("-")));
var endDay =eval( endtime.substring(endtime.length,endtime.lastIndexOf("-")+1));
var endYear =eval( endtime.substring(0,endtime.indexOf("-")));
if(starttime=="输入开始时间……")
{
alert("请选择统计开始时间!");
return false;
}
if(endtime=="输入结束时间……")
{
alert("请选择统计结束时间!");
return false;
}
if(Date.parse(startMonth+"/"+startDay+"/"+startYear)>Date.parse(endMonth+"/"+endDay+"/"+endYear))
{
alert("开始时间大于结束时间");
return false;
}

});
});
</script>



<form id="form1" runat="server">
<div class="navbar" id="div1">
<table class="tablein">
<tr>
<td class="rhead">
指示时间:</td>
<td>
<input type="text" id="txtBeginDate" title="输入开始时间……" value="" runat="server" class="textbox"
onclick="ShowCalendar(this)" />
<input type="text" id="txtEndDate" title="输入结束时间……" value="" runat="server" class="textbox"
onclick="ShowCalendar(this)" />
</td>

<td>
<asp:LinkButton runat="server" ID="btnSearch" Text=" 查 询 " CssClass="button"></asp:LinkButton><div
class="splith">
</div>
</td>
<td>
<asp:LinkButton runat="server" ID="btnClear" Text=" 重 置 " CssClass="button" OnClientClick="return cleartext()"></asp:LinkButton>
<div class="splith">
</div>
</td>
</tr>
</table>
</div>
</form>

...全文
96 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
莫舍桥西 2012-01-20
  • 打赏
  • 举报
回复
谢谢 上面各位牛人的提醒,我会注意的。谢谢
tigerleq 2012-01-19
  • 打赏
  • 举报
回复
在说个 编程上的 问题

if(starttime=="输入开始时间……")
{
alert("请选择统计开始时间!");
return false;
}
if(endtime=="输入结束时间……")
{
alert("请选择统计结束时间!");
return false;
}

明显 可以 合并
if(starttime=="输入开始时间……"||endtime=="输入结束时间……")
{
alert("请选择统计开始时间!");
return false;
}

这些 都是 小 问题 ,但 很多 的小问题
最后 你的 程序 就 成了 大问题 了
看是 很简单的 一个 习惯
就 能 把 你的工资
和 别人 区分 开来?
tigerleq 2012-01-19
  • 打赏
  • 举报
回复
还有 你那个 赋值
我晕死 自己 研究 下 jquery
要 发挥 选择器的 牛处
tigerleq 2012-01-19
  • 打赏
  • 举报
回复
你 怎么 写的呀

jquery 语法 都 整错球 了
$('#div1 input[title]').
这个 不对
$('#div1 input[title^=null]')



很多 可以 简写 你 怎么 那样写呀
效率都让 你浪费了 jquery 选择 器 很强大 的

看 了 你 的代码 ,我都在怀疑 jquery 是 不是垃圾 了!!!

$('#div1 input[title^=null]')
.blur(function() {
//如果文本值等于空
if($(this).val() == '')
{
$(this).val($(this).attr('title')).removeClass('focused');
}
})
.focus(function() {
//如果文本值等于title
if($(this).val() == $(this).attr('title'))
{
$(this).val('').addClass('focused');
}
});
youhongbao 2012-01-19
  • 打赏
  • 举报
回复
//查询按钮
$('#btnSearch').click(function(){
此处的$('#btnSearch')是错误的,应该是 $("#<%=btnSearch.ClientID %>")
幕夜 2012-01-19
  • 打赏
  • 举报
回复
把判断放在分解时间的前面
if(starttime=="输入开始时间……")
{
alert("请选择统计开始时间!");
return false;
}
if(endtime=="输入结束时间……")
{
alert("请选择统计结束时间!");
return false;
}
幕夜 2012-01-19
  • 打赏
  • 举报
回复
当你文本框为空时间是不能分解的,只有字符串。你分解时间时必须先判断一下是否文本框里有值,并且值应该是日期格式才行。

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧