我想在点击链接时显示博客详情。
这是我的代码的一部分。
“。ajax”part
$.ajax({
url: 'someurl',
dataType: 'json',
success: function( response ) {
$( '#viewDialog > h1' ).html( response.title );
$( '#viewDialog > p' ).html( response.content );
$( '#viewDialog' ).dialog( 'open' );
}
});
“。html”part
<div id="viewDialog" title="My Blog">
<h1></h1>
<p></p>
</div>
我很确定我以正确的json格式从服务器获得响应。
像这样的东西
{"id":"120","title":"My new stuff","content":"Someting new","author_id":"11"}
当我点击链接时,对话窗口加速,但窗口中没有显示任何信息。
我做对了吗?
米洛
答案 0 :(得分:2)
几乎从表面看来 - 试试这个:
$.ajax({
url: 'someurl',
dataType: 'json',
success: function( response ) {
$( '#viewDialog > h1').html( response.title );
$( '#viewDialog > p' ).html( response.content );
$( '#viewDialog' ).dialog( 'open' );
}
});
你没有定义我能看到的blogDetail的ID。看起来您正在尝试将HTML放入viewDialog中。
答案 1 :(得分:1)
您提供的HTML中没有ID为blogDetail
的元素。
问题更新后修改:
将'open'
传递给对话框调用只有在先前创建对话框时才有效。
将$( '#viewDialog' ).dialog({autoOpen:false});
放在jQuery脚本的顶部应该可以使它工作。
或者您只需删除“打开”参数,然后只需拨打$( '#viewDialog' ).dialog();