调用javascript函数的日期picker输入标签工作的第二个动作
calling of javascript function on datepicker input tag working on second action
我正在使用调用日期拾取器脚本的输入标记。现在在输入标签的onblur事件上,我正在调用一个javascript函数,该函数正常工作,但第二次当我单击datepicker输入以选择值时。
当我第一次点击输入标签并从datepicker中选择一个值时,什么也没有发生。但是第二次当我点击输入标签并从datepicker中选择一个值时,我的javascript函数正在工作。
代码如下:
// HTML code for input tag using datepicker script
<div class="input-append">
<input type="text" size="12" id="inputField" name="event_fromdate" readonly Placeholder="From Date" onblur="show_hide_fromdate();" />
</div>
// javascript function
function show_hide_fromdate()
{
var fromdate=$('#inputField').val();
var current_date = new Date();
var userdate = new Date(fromdate);
if(fromdate=="")
{
document.getElementById('msgFromDate').innerHTML = 'Enter From Date.';
}
else
{
if(current_date.getDate()>userdate.getDate() ||
current_date.getMonth()>userdate.getMonth() ||
current_date.getFullYear()>userdate.getFullYear())
{
document.getElementById('msgFromDate').innerHTML = 'Invalid event date';
}
else
{
$('#msgFromDate').html('');
}
}
}
没有得到这个代码中的错误
我认为你的问题是在onBlur
事件。我不知道为什么你在readonly
文本字段上使用onBlur
调用JS方法。你能解释一下吗?
发生这种情况是因为您的onblur
事件没有等待您的datepicker
输入。我认为你需要的是一些东西,可以告诉你,在你的textfield
的文本已经改变。像这样:
$("input[type=text]").change(function() {
alert("Text changed");
});
function show_hide_fromdate()
{
var fromdate=$('#inputField').val();
var current_date = new Date();
//comment this since first time this value of field is always empty
//I move it to validation part below
//var userdate = new Date(fromdate);
if(fromdate=="")
{
$('#msgFromDate').html('Enter From Date.');
}
else
{
var userdate = new Date(fromdate);
if(current_date.getDate()>userdate.getDate() ||
current_date.getMonth()>userdate.getMonth() ||
current_date.getFullYear()>userdate.getFullYear())
{
$('#msgFromDate').html('Invalid event date'.');
}
else
{
// maybe you should echo something to know whether it worked well or not to debug
$('#msgFromDate').html('Valid');
}
}
}
如果上面的代码不起作用,你应该使用firebug来检测是否有javascript错误,也许你也应该仔细检查日期时间选择器的输出。我建议您在函数中添加"console.log('on blur')"以调试此事件行为的工作方式。
相关文章:
- 为什么不'在JQuery中找到第二个css选择器的工作
- 我的设备后退按钮工作不正常,它转到第一个html,但返回到第二个html
- 添加第二个参数时,Javascript函数将停止工作
- 我在一页上有两个简单的javascript幻灯片,但第二个停止了第一个工作
- 单击的第二个项目无法正常工作
- AngularJS,第二个控制器不工作
- Javascript在第二个按钮单击而不是第一个按钮上工作
- 两个jquery插件,第二个不工作
- Ajax 构建关系按钮有效,用于显示引导模式的第二个按钮有效,但两者不能协同工作
- 角度.js第二个控制器不工作
- JSON.stringify()工作不正常-第二个参数消失
- 为什么Flexslider中的一个选择器工作,而第二个选择器不工作;t
- 第二个jQuery加载日期选择器不工作
- 为什么头中包含的第二个js文件工作不正常
- PHP&JavaScript:不工作的第二个脚本
- 点击第二个选项,jquery不会工作,除非我点击页面上的其他任何东西
- 一个脚本阻止第二个脚本工作
- safari表单验证只在第二个按钮点击,但在IE第一次点击本身工作良好
- 第二个动画不工作
- 无法让第二个事件监听器为MVC计数器应用工作