jQuery:如果 DatePicker UI 更改,则更新某个文本框
Posted
技术标签:
【中文标题】jQuery:如果 DatePicker UI 更改,则更新某个文本框【英文标题】:jQuery: Update a certain textbox on if DatePicker UI is changed 【发布时间】:2017-04-01 19:23:30 【问题描述】:我有这个问题,分配了一个文本框来获取日期选择器的值。我最初没有问题(意味着起初没有更改日期选择器),因为有一个按钮可以点击来生成隐藏的文本框。但是当更改日期选择器的值时(在生成文本框之后),就会出现问题。这是示例:
日期选择器:
<input type='text' name='devd' id="devd_1" class='pickdate' size='10' />
隐藏文本框:
<input type='hidden' name='devd_box' id='devd_box_1'/>
我提到的按钮只能使用一次。所以我现在的问题是如果日期选择器的值发生了变化,如何填充隐藏的文本框。
您可能会注意到 ID 的最后一个数字,这是它们的共同参考,因此它可以更新正确的框,因为它有多个日期选择器/框。
感谢大家的帮助!
P.S:ID 后面的最后一个数字是动态填充的,因此我不能只硬编码日期选择器的 ID。
为有需要的人提供实际解决方案:
$('.pickdate').on('change', function (ev)
var string_id = this.id;
var lastnum = string_id[string_id.length -1];
$('#devd_box_' + lastnum).val(this.value);
);
【问题讨论】:
您能否展示您的.datepicker()
代码,以及您如何尝试使用onSelect: function()
? (基于your comment)
@Sean,感谢您花时间回答这个问题,但我现在解决了我的问题。 :)
【参考方案1】:
只需查找onChange
事件。
$('#devd_1').on('change', function (ev)
$('#devd_box_1').val('Your text here');
);
每当日期选择器字段发生更改时,这将更改隐藏字段上的文本。
关于 动态 id 部分 -
为它创建一个javascript函数并调用它以获取实际的id
。
注意: 请参考问题的实际解决方案。
【讨论】:
我已经尝试过了,但它不起作用。我读了这个***.com/questions/6471959/…,但我需要澄清一下。 试试$('#devd_box_1').val('Your text here');
我不能硬编码日期选择器的 id。我在上面发布的问题仅针对一个日期选择器,但正如我也提到的,该模块有多个日期选择器,其中最后一个数字(例如 _1)是动态填充的。
正如我所提到的,填充文本框没有问题。更多的是捕获日期选择器的 onChange 事件。
$('#devd_1').on('change', function (ev)
应该捕获事件。以上是关于jQuery:如果 DatePicker UI 更改,则更新某个文本框的主要内容,如果未能解决你的问题,请参考以下文章
jQuery:如果 DatePicker UI 更改,则更新某个文本框
如何解决 jQuery UI Datepicker 的手动日期输入?
默认将 PHP 变量解析为 Jquery UI Datepicker
如果超出范围,防止 jQuery UI datepicker 更改文本字段的值