Javascript 在新创建的div中插入ruby部分的js选择器
我有数字字段和相关的空div。我可以编写这样一个代码:当您增加或减少数字字段中的数字时,在数字字段1中插入一个新div。空div之后插入一个新div。1在数字字段1中插入新div,2在数字字段1中插入新div 2总计div,3在数字字段1中插入新div 3总计div。等等 现在,我的代码正在创建一个新的空div,其中没有任何内容。但是我想要的是在新div中创建一个ruby分部 下面是一个演示: 这是我在js.erb文件中尝试过的Javascript 在新创建的div中插入ruby部分的js选择器,javascript,jquery,ruby-on-rails,Javascript,Jquery,Ruby On Rails,我有数字字段和相关的空div。我可以编写这样一个代码:当您增加或减少数字字段中的数字时,在数字字段1中插入一个新div。空div之后插入一个新div。1在数字字段1中插入新div,2在数字字段1中插入新div 2总计div,3在数字字段1中插入新div 3总计div。等等 现在,我的代码正在创建一个新的空div,其中没有任何内容。但是我想要的是在新div中创建一个ruby分部 下面是一个演示: 这是我在js.erb文件中尝试过的 $(document).ready(function() {
$(document).ready(function() {
$('.product-quantity').each(function() {
$(this).data('val', this.value);
}).on('change', function () {
var val = $(this).val(),
old = $(this).data('val'),
ele = $(this).closest('[id^="product"]').find
('[data-size="'+this.name+'"]'),
inc = val >= old;
if (inc) {
$('<div/>', {
'class': 'name-number-field', 'text':'<%= render :partial =>
'name_number_field', :locals => {:product => product, :size => size} %>'
}).insertAfter(ele);
}else {
$('div.name-number-field', ele.parent()).last().remove();
}
$(this).data('val', this.value);
});
});
$(文档).ready(函数(){
$('.product quantity')。每个(函数(){
$(this.data('val',this.value));
}).on('change',function(){
var val=$(this.val(),
old=$(this).data('val'),
ele=$(this).closest('[id^=“product”]')。查找
(“[data size=“”+this.name+“]”]),
inc=val>=old;
if(公司){
$('', {
“类”:“名称编号字段”,“文本”:”
'name_number_field',:locals=>{:product=>product,:size=>size}%>'
}).插入符(ele);
}否则{
$('div.name-number-field',ele.parent()).last().remove();
}
$(this.data('val',this.value));
});
});
我也不知道怎么做,但我有个主意
gem“cocoon”的功能完全符合您的要求(使用JS渲染部分),但它需要在模型上进行关联
假设您并没有模型关联,您只想插入部分,我建议您研究cocoon的想法和方法的实现
您可以在js.erb文件中执行此操作:
$('#yourDiv').html('<%= escape_javascript( render :partial => "name_number_field", :locals => { :product => product, :size => size } )%>');
$('#yourDiv').html(''name_number_field',:locals=>{:product=>product,:size=>size})%>');
让jQuery查询它。