我在jQuery手机中克隆了表单,克隆的表单元素似乎无法工作。 IE的选择列表不会更改值,您不能滑动范围滑块。jQuery手机克隆表单元素无法正常工作
我正在试图使用下面的代码克隆一个窗体并增加克隆窗体的每个实例上的名称和ID值。
function newObservation() {
var len = $('.observation').length;
var titleLen = $('.observation').length + 2;
var $html = $('.observationTemplate').clone();
$('.observationTitle:eq(0)').text("Observation - " + titleLen);
$html.find('[name=audit-observation-category]').eq(0).attr({name:"audit-observation-category" + len, id:"audit-observation-category" + len});
$html.find('[name=audit-observation-notes]').eq(0).attr({name:"audit-observation-notes" + len, id:"audit-observation-notes" + len});
$html.find('[name=audit-observation-recommendation]').eq(0).attr({name:"audit-observation-recommendation" + len, id:"audit-observation-recommendation" + len});
$html.find('[name=audit-observation-severity]').eq(0).attr({name:"audit-observation-severity" + len, id:"audit-observation-severity" + len});
$html.find('[name=audit-observation-person]').eq(0).attr({name:"audit-observation-person" + len, id:"audit-observation-person" + len});
$html.find('[name=audit-observation-date]').eq(0).attr({name:"audit-observation-date" + len, id:"audit-observation-date" + len});
return $html.html();
}
$(document).on('pageinit', function(){
$('<div/>', {
'class' : 'observation', html:newObservation()
}).appendTo('#auditContainer');
$('#auditObservationButton').click(function() {
$('<div/>', {
'class':'observation', html:newObservation()
}).hide().appendTo('#auditContainer').slideDown('slow');
});
$('#auditForm').on('click', '.close', function(){
$(this).parent().fadeOut();
});
});
这里是一个小提琴,其中概述了代码,但不会因为JQM误差修改库本身的工作(或者说这样的jsfiddle)http://jsfiddle.net/FL398/
这里是什么林遇到http://dirtybirddesignlab.com/FireSafe/audit.html#auditForm如果一个例子您单击“添加观察”表单克隆,正确地增加元素的名称和标识属性,但它们是可访问的。
啊。现在我明白了。你在克隆增强的DOM?嗯......我建议绑定到'[pagebeforecreate](http://api.jquerymobile.com/pagebeforecreate/)',并从DOM中获取** unnhanced **表单。将其存储在内存中并将其用于“克隆”。当你克隆时,在窗体上调用'trigger(“create”)',你应该没问题。 – frequent
非常赞赏洞察力。你会/愿意详细说明从DOM中获取未增强的形式,保存它并将它用于“克隆”吗? –
我切换到'pagebeforecreate',它允许选择列表在第一个克隆上正常运行,但不是任何次级列表。用触发器(“创建”)' –