2 つのページ間でデータをやり取りしようとしています。
これが私がこれまでに持っているものです: http://jsfiddle.net/8JXTT/49/
$("#secondpage").attr("val", "test value"); を使用して、2 番目のページに属性を設定します。
そして、この属性にアクセスするには、次を使用します: var val1= $(this).attr('val');
ただし、「リンク ボタン」ごとに値が異なる必要があります。
このフィドルでは、ボタンに設定する必要があるときに、ページ自体に属性を設定していますか?
ボタンが押されたときに次のページで値にアクセスできるように、各ボタンに関連付けられた一意の値を渡すようにコードを修正するにはどうすればよいですか。
フィドルコード:
HTML
<div data-role="page" id="firstpage">
<div data-role="header">
<h1>First Page</h1>
</div>
<div data-role="content" id="links"></div>
<div data-role="footer">
<h4>Page Footer</h4>
</div>
</div>
<div data-role="page" id="secondpage">
<div data-role="header"> <a href='#' class='ui-btn-left' data-icon='arrow-l' onclick="history.back(); return false">Back</a>
<h1>Bar</h1>
</div>
<div id="pagecontent" data-role="content"></div>
<div data-role="footer">
<h4>Page Footer</h4>
</div>
</div>
JS
$(document).ready(function () {
for (var i = 0; i < 4; i++) {
var button = '<a data-role="button" href="#secondpage" data-theme="c" class="ui-btn ui-btn-corner-all ui-shadow ui-btn-up-c"><span class="ui-btn-inner ui-btn-corner-all"><span class="ui-btn-text">Link Button</span></span></a>';
$('#links').append(button);
$("#secondpage").attr("val", "test value");
}
$('#secondpage').live('pageshow', function () {
var val1 = $(this).attr('val');
$("#pagecontent").html(val1);
console.log('val is ' + val1);
});
});