0

我正在开发一个 ASP.NET 网站(MVC3 但对我的问题并不重要)

当用户单击要打开 Jquery 模态对话框的链接时,我的页面上有一些链接:

http://jqueryui.com/demos/dialog/#modal-message

对于每个链接,我希望显示一个不同的对话框。

据我了解,我必须<div>在我的页面上指定对话框的内容。例如:

<div id="dialog" title="Basic dialog">
    <p>Here we put the content of the dialog</p>
</div>

链接是动态生成的,我不想为每个链接创建一个 div。对话框的内容也取决于链接发送的参数

我将尝试解释我想要什么。

如果可能的话,我想要做的是:

我有一个 div

<div id="dialog" title="Basic dialog">
</div>

当用户点击 link1 时调用一个函数ShowDialog(FirstName1, LastName1)

该函数会将参数作为字符串添加到div“对话框”并打开对话框。

当用户单击链接 2 时,“div”“对话框”被清除,新内容由函数填充,ShowDialog(FirstName2, LastName2)对话框打开。

应该做的就是 Jquery 或 Javascript。

我希望我很清楚。如果需要更多信息,请询问。

4

1 回答 1

2

您尚未指定将从何处检索firstnamesurname值,因此我已将它们分配给data-*链接的属性,如下所示:

<a href="#" data-firstname="Foo" data-surname="Bar">Click me</a>
$("#dialog").dialog({ /* settings */ });

$("#link2").click(function() {
    var $el = $(this);
    var fn = $el.data("firstname");
    var sn = $el.data("surname");
    ShowDialog(fn, sn);
});

function ShowDialog(firstname, surname) {
    // Here you can do whatever is required to the dialog, create elements, change text, go nuts.
    $("p", "#dialog").text("Hello " + firstname + " " + surname); 

    // Show the dialog
    $("#dialog").dialog('open');
}
于 2012-04-11T10:40:50.417 回答