当用户选择WorkCentre时,会发送一个请求以获取该工作中心的默认持续时间,然后将此值插入相应的字段中。但是用户可能希望指定不同的持续时间。 仅当用户未进行手动更改时,持续时间的自动更新才有效。因此,如果我要在最后一行的持续时间字段中输入5,那么即使我更改了工作中心,它也会卡在5上。
继承我的代码:
$(document).on('change', 'select.form-control', function() {
var WorkCentre = $(this).val();
var i = $(this).attr('row-number');
SetDuration(WorkCentre, i);
});
$(document).on('change', '.duration', function() {
console.log('change');
UpdateDates();
});
function SetDuration(WorkCentre, i) {
$.get("/getDuration", {'WorkCentre' : WorkCentre}, function(data){
var duration = data;
$('input[name="Ops['+i+'][Duration]"]').val(duration);
});
}
如果用户选择工作中心,将持续时间从默认值更改为自定义值,但随后确定他们选择了错误的工作中心并选择了新工作中心,则新的默认持续时间不会更新
你可以在这里看到: https://www.youtube.com/watch?v=RFxwYlH7df8 一旦我手动更改持续时间,它就会被卡住。
答案 0 :(得分:0)
问题是下一行:(您引用的是选择元素,您应该引用所选项目):
var i = $(this).attr('row-number');//No return data
更改:
var i = $(this).find("option:selected").attr('row-number');//Return value of attribute