You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
41 lines
1.2 KiB
41 lines
1.2 KiB
$(function () {
|
|
var template = $('template.spec-tpl').html();
|
|
|
|
//新增产品时,选择供应商产品载入规格
|
|
$('input[name="product_id"]').change(function () {
|
|
$.ajax({
|
|
url: '`{{url}}`',
|
|
method: 'POST',
|
|
data: {
|
|
product_id: $(this).val(),
|
|
_form_: '`{{class}}`',
|
|
},
|
|
success: function (res) {
|
|
var fields = ['supplier_name', 'supplier_date', 'supplier_price', 'supplier_stock', 'product_spec_id'];
|
|
var data = res.data;
|
|
var forms = $('.has-many-spec-forms');
|
|
|
|
//如果是已经保存有记录(.field_id不为空),调用click,提交的时候会同时删除数据库里的记录,否则直接remove掉,减小HTML体积
|
|
forms.children().each(function () {
|
|
if ($(this).find('.field_id').val()) {
|
|
$(this).find('.remove.btn').click();
|
|
} else {
|
|
$(this).remove();
|
|
}
|
|
});
|
|
|
|
for (var key in data) {
|
|
var row = $(template.replace(/new___LA_KEY__/g, key));
|
|
for (var i=0; i<fields.length; i++) {
|
|
var field = fields[i];
|
|
row.find('input.field_' + field).val(data[key][field]);
|
|
}
|
|
forms.append(row);
|
|
}
|
|
},
|
|
error: function () {
|
|
Dcat.error('服务器出现未知错误,获取供应商产品规格失败');
|
|
}
|
|
});
|
|
});
|
|
});
|