2013-01-12 230 views
1

我使用jQuery Mobile和一次我點擊從這個列表中的鏈接:如何將列表項目從一個列表移動到另一個列表?

<div id="scroller"> 
    <div class="trans"> 
     <ul id="thelist" data-corners= "false" data-role="listview"> 
      <div class = "theListItem" data-role="collapsible-set" data-collapsed="false"> 
       <li><a class= "left" data-inset="true" data-transition="pop" href="YesNoMaybe.html"><h4>Think Coffee</h4><h3>$3.50</h3></a></li> 
       <li><a class= "left" data-inset="true" data-transition="pop" href="YesNoMaybe.html"><h4>Think Coffeadsf dsadsf ads faf adsf adsf adsf sadf asdf adsfadsfadsfadsfadsf sadfasdfe</h4><h3>$3.50</h3></a></li> 
       <li><a class= "left" data-inset="true" data-transition="pop" href="YesNoMaybe.html"><h4>sup Coffee</h4><h3>$3.50</h3></a></li> 
      </div> 
     </ul> 
    </div> 
</div> 

如果<h4><h3>文字代替這個名單上的文字我愛:

<ul id="thelist" data-corners= "false" data-role="listview"> 
    <div class = "theListItem" data-role="collapsible-set" data-collapsed="false"> 
     <li class="purchase" ><a data-inset="true" href="#"><h4>Think Coffee</h4><h3>$3.50</h3></a></li>    
    </div> 
</ul> 

我試過這個:

$('#transPage').live('pageinit', function() { 
$('a').click(function(){ 
    var $move = $(this).closest('li').appendTo("#YesNoMaybePage .theListItem"); 
    }); 
}); 

並沒有得到。這些列表位於不同的頁面上。所有的建議都比歡迎。感謝世界。我欠你的時間。

+1

您必須先將其從DOM中移除; (''''')。'remove()。appendTo ...' – dualed

+1

and use .on instead of .live – mplungjan

+0

'$('#transPage')'或'$('#trans' )'? – hjpotter92

回答

0

嘗試沿着這些路線。

$('#transPage').on('pageinit', function() { 
    $('a').click(function(){ 
    var $h4 = $(this).find('h4').text(); // select the text of h4 
    $('.purchase h4').text($h4);   // insert the text in the target 

    var $h3 = $(this).find('h3').text(); 
    $('.purchase h3').text($h3); 
    }); 
}); 

我在jsFiddle上測試它,它工作。 http://jsfiddle.net/3JWFJ/

+0

謝謝!這很好。我唯一的問題是,它只適用於刷新第二頁「#YesNoMaybePage」,而不是刷新'#transPage'時。任何想法爲什麼? – Squirrl

+0

隨着代碼片斷,我不能說我這樣做。抱歉。您可以嘗試使用console.log()或alert()來查看腳本是否按預期觸發。 –

相關問題