0

我使用 jQuery 对话框小部件来显示从服务器返回的 JSON 数据。我似乎能够让它工作的唯一方法似乎有点“hacky”。我必须创建一个锚并隐藏它,以及在data-roll='page'div 之外添加对话框结构 -

<a id='lnkDialog' href="#dialog" data-rel="dialog" data-transition="pop"></a>

a#lnkDialog{显示:无;}

<div data-role="page" id="dialog" data-close-btn="right">
    <div data-role="header" data-theme="d" class="ui-icon-nodisc" data-iconshadow="false"> 
     <h1 id="dialogHeadline"></h1></div>    
     <div data-role="content" id="text"></div>    
</div>

要显示返回的 JSON,我必须将其添加到 $.ajax 调用的成功函数中。

$("#lnkDialog").click();
$("#dialogHeadline").text('Success');
$('#text').append('<p>The location ' + '<span style="font-weight:bold;font-style:italic;">' + Name + '</span> has been added.</p>' + '<p>Details:<br> ' + 'ID: ' + ID + '<br>Address: ' + Address1 + '</p>');

我宁愿将对话框的 HTML 结构存储在一个 var 中,并在$('#lnkDialog').click();可能的情况下调用它,但不能让它工作。

var dialog = '<div data-role="header" id="dialog" data-close-btn="right">//rest of HTML</div>';
$('#lnkDialog'.click( dialog );//doesn't seem to work, and how would I chain the .text and .append functions here?

我将需要从页面上的多个表单多次访问此对话框结构。我如何更有效地做到这一点?

4

0 回答 0