gpt4 book ai didi

javascript - jQuery/JavaScript 函数不更新文本框

转载 作者:行者123 更新时间:2023-11-29 17:17:17 26 4
gpt4 key购买 nike

我正在使用 Bootstrap DatePicker:https://github.com/eternicode/bootstrap-datepicker

我将它附加到两个框 - InvDate 和 InvDueDate - 并且它弹出正常,并且可以很好地设置日期等。

不过,我有一个下拉框,当被选中时,我想在 InvDate 框中获取日期,并将下拉列表的 val() 添加到 InvDate,并填充 InvDueDate。

但是,我似乎无法让 InvDueDate 更改它的日期(什么都不做)- 下拉框确实触发了该功能,但这一行似乎没有做任何事情:

$("#InvDueDate").datepicker("setDate", duedate);:

HTML 是:

        <div class="editor-label">
<label for="InvDate">InvDate</label>
</div>
<div class="editor-field">
<input class="textbox datepicker" data-val="true" data-val-date="The field InvDate must be a date." data-val-required="The InvDate field is required." id="InvDate" name="InvDate" type="text" value="02 May 2013" />
<span class="field-validation-valid" data-valmsg-for="InvDate" data-valmsg-replace="true"></span>
</div>



<div class="editor-label">
<label for="Terms">Terms</label>
</div>
<div class="editor-field">
<select id="Terms" name="Terms"><option value="0">Due on invoice date</option>
<option value="7">Net 7 days</option>
<option value="14">Net 14 days</option>
<option value="21">Net 21 days</option>
<option value="28">Net 28 days</option>
<option value="45">Net 45 days</option>
<option value="60">Net 60 days</option>
</select>
</div>

<div class="editor-label">
<label for="InvDueDate">InvDueDate</label>
</div>
<div class="editor-field">

<input class="textbox datepicker" data-val="true" data-val-date="The field InvDueDate must be a date." data-val-required="The InvDueDate field is required." id="InvDueDate" name="InvDueDate" type="text" value="02 May 2013" />

<span class="field-validation-valid" data-valmsg-for="InvDueDate" data-valmsg-replace="true"></span>
</div>

我的 jQuery/Javascript 是:

<script type="text/javascript">
$(document).ready(function () {
$("#Terms").change(function () {
var invdate = new Date();
var duedate = new Date();
invdate = $("#InvDate").val();
var net = $("#Terms").val();
duedate.setDate(invdate.getDate() + net);
$("#InvDueDate").datepicker("setDate", duedate);
});
});
</script>

任何人都清楚我哪里出错了吗?

更新以显示工作代码

    var start_date = new Date($('#InvDate').val());
var duration = parseInt($('#Terms').val());
var end_date = new Date();
end_date.setDate(start_date.getDate() + duration);
$("#InvDueDate").datepicker("setDate", end_date);

最佳答案

我认为您的日期格式不正确,请参阅:

var invdate = new Date(); 

然后它被替换为

$('#invDate').val();

但它应该是:

var invDate = new Date($('#invDate').val());

或(如 zeroflagL 评论)

var invDate = $('#invDate').datepicker('getDate'); //gives you a Date object

关于javascript - jQuery/JavaScript 函数不更新文本框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16340897/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com