0

I use a jquery mobile listview which creates dynamic his entrys.
The list entries contain a flip toggle switch, in each entry of the listview.
But something going wrong that i couldn't find.
There a always 2 flip toggle switches in in each entry, one who's working an one who's not taking action by mouse events. Here my code

I've a short example on http://jsfiddle.net/joergtiedemann/zSXS3/3/

JS:

function Update() {
  $('#functionlist ul li').remove();
  var newListTitle = $('#titleTemplate').clone();
  newListTitle.appendTo('#functionlist ul');
  var newEntryRow = $('#entryTemplate').clone();
  newEntryRow.appendTo('#functionlist ul');
  $( '#flip-1').slider('refresh');
  $("#functionlist").trigger('create');
  $("#functionlist").listview('refresh');
};

Update();

This shows what happens Can anyone help me please.

4

2 回答 2

1

我有同样的问题。在挣扎了几个小时后,我找到了解决方法。我从 entryTemplate 中取出翻转切换开关,并将其作为自己的模板。我只在模板中留下了左侧的 fieldcontain div 并给了它一个 ID。

然后,在 js 代码中,我首先克隆了 entryTemplate,然后克隆了翻转并将其附加到 fieldcontain。

你可以在这里看到更新的 jfiddle:http: //jsfiddle.net/zSXS3/32/

 function Update() {
     $('#functionlist ul li').remove();

     var newListTitle = $('#titleTemplate').clone();
        newListTitle.appendTo('#functionlist ul');

        var newEntryRow = $('#entryTemplate').clone();

        var flipLabel = $('#labelflipTemp').clone();
        flipLabel.attr('for', "flip-1");
        var flip = $('#flipTemplate').clone();
                flip.attr('id', "flip-1");

        flipLabel.appendTo(newEntryRow.find('#flipsw-container'));
        flip.appendTo(newEntryRow.find('#flipsw-container'));

        newEntryRow.appendTo('#functionlist ul');

     $("select").slider();
     $("#functionlist").trigger('create');
     $("#functionlist").listview('refresh');
 };
Update();

我希望这有帮助。我很感激对此解决方法的任何反馈。

于 2016-09-05T07:44:58.510 回答
0

解决它。问题是,在第 7 行,你有一个按钮 run .clone(),它有两个按钮。

更新 JSFiddle:http: //jsfiddle.net/zSXS3/5/

于 2014-01-12T17:09:10.207 回答