【发布时间】:2011-07-06 04:18:19
【问题描述】:
我正在尝试使用 json 数组中的新内容更新对话框的 div,但遇到问题并请求一些指导。
我输出一个包含“名称”和“定义”标签的 json 数组。向用户呈现单选按钮列表。当用户单击具有以下结构的单选按钮时:
<input type="radio" value="23" name="statistic" id="stat-23" />
我获取单选按钮的值并使用它来识别我从我的 json 数组中引用的“名称”“定义”对。
然后我使用“名称”“定义”对来填充通常动态更新的 div。为此,我使用以下代码:
$('input[type=radio]').live( 'change', function(){
if ( ! $(this).is(':checked') )
return false;
var stat_id = $(this).attr( 'id' ).replace( /stat-/, '' );
refreshDefinition( stat_id );
} );
function refreshDefinition( stat_id ) {
var definition = definitions[ stat_id ];
var div = $("<div id='definition'>"+definition.name+": "+definition.definition+"</div>");
$('#definition').replaceWith( div );
}
这在没有对话框的情况下可以正常工作(它会按原样更新),但是,如果有某种方法可以合并对话框,这样当用户单击按钮时,对话框就会出现并且它们会显示出来会更好。可以看到 'Name' 'Definition' 对,然后在满意时退出。
$('#definition').dialog();
我希望上面的代码显示更新后的数据,但似乎不允许这样做。
如果您对我如何解决此问题或任何替代方法有任何指导,我将不胜感激!
谢谢。
【问题讨论】:
-
我发现了一个非常简单的实施指南,实际上最终实现了我想做的事情。你可以在这里阅读:raventools.com/blog/….