2010-05-12 36 views
0

嘿家伙我有一个快速问题,我有一个对话框,有不同属性的多个链接。每次单击链接时,属性src将打印在对话框的内部,以便每个链接在对话框中都有唯一的输出。我的问题是,只有第一个src标题在每个框中,我想改变这一点以及每次点击。我将包含标题的行分开以显示问题。如果有人有任何想法,我将不胜感激。 编辑每次点击更新对话框标题

<a class="open" src="something" title="Click to play">link</a> 
<a class="open" src="something else" title="Click to play">link2</a> 

$(function() { 

$(\"#show\").dialog({ 
hide: 'clip', 
width: 400, 
height: 150, 
position: 'center', 
show: 'clip',stack: true, 
minHeight: 25, 
minWidth: 100, 
autoOpen: false, 
resizable:false}); 

$('.open').click(function() { 
var src=$(this).attr('src'); 
$('#show').html(src); 
$('#show').dialog({ title: src }).dialog('open'); 
    }) 

}); 

回答

2

您需要可以一次创建你的函数之外的对话框,并设置标题,或破坏先前的对话框。

毁灭前一个,并创建一个新的每次点击:

$("#show").dialog("destroy").dialog({ options }); 

每次只需设置标题和文字创造一次(更好的方法)对话框:

$("#show").dialog({ 
    hide: 'clip', 
    width: 400, 
    height: 150, 
    position: 'center', 
    show: 'clip', 
    stack: true, 
    minHeight: 25, 
    minWidth: 100, 
    autoOpen: false, 
    resizable: false 
}); 
$('.open').click(function() { 
    var src = $(this).attr('src'); 
    $('#show').html(src).dialog('option', 'title', src).dialog('open'); 
    //or... 
    $('#show').html(src).dialog('option', {title: src}).dialog('open'); 
}); 
+0

美丽谢谢尼克 – Scarface 2010-05-12 18:57:39

+0

再次感谢尼克,但当我尝试第二种方法,标题是空白 – Scarface 2010-05-12 19:23:00

+0

我更新了我的帖子,以显示我使用 – Scarface 2010-05-12 19:23:49

1

更新jQuery UI的标题

$('#show').data('title.dialog', 'new title');