2012-04-11 18 views
0

我工作的ASP.NET網站(MVC3但我的問題並不重要)更改使用jQuery(帶參數的jQuery的對話)

我有我的網頁上的一些鏈接在一個div的內容時,用戶點擊一個鏈接我想開一個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> 

當鏈路1的功能的用戶點擊被稱爲ShowDialog(FirstName1, LastName1)

該功能將添加參數作爲字符串到div「對話框」並打開對話框。

當用戶點擊link2時,'div'「對話框」被清除,新的內容被功能ShowDialog(FirstName2, LastName2)填滿,對話框打開。

所有應該完成的是Jquery或Javascript。

我希望我很清楚。如果需要更多信息,請詢問。

回答

2

您還沒有指定在這裏您將retrieveing從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'); 
}