Je travaille pour l'instant sous un projet 'asp.net mvc 4 web application' en utilisant de l'html, du javascript(JQuery et JQuery Mobile) pour travailler.

Pour vous expliquer la situation, en fait, je possède un tableau en JQuery Mobile qui reprend par ligne un congé(code,date début,date fin) qui fait que quand je clique sur une cellule, cela fait un appel Ajax vers une méthode de mon controleur. Cette méthode fait un appel à ma base de données pour récupérer davantage d'informations sur le congé. Une fois cela, la méthode retourne une partial view qui contient du JQuery Mobile(un tableau avec les données et un bouton OK) pour l'affichage de ma boite de dialogue.

Quand j'atteris dans le OnSuccess de mon appel Ajax, je fais :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
$("#test").html(myData) 
$("#test").dialog({
     autoOpen: true,
     modal: true,
     resizable: true
     });
$("#test") n'est rien d'autres qu'une balise div avec l'id 'test'.

Mon problème est que quand j'appuie sur le bouton ok, la boite de dialogue ne disparait pas. De plus, si je fais un $("#test").dialog("hide"), la boite de dialogue se ferme bien mais quand je clique sur une autre cellule de mon tableau, il n'y a plus de boite de dialogue qui s'affiche.

Pourriez-vous m'aider ?

Merci

Code partiel de ma view :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
 
function c(){
$('#test').dialog("close");
}
 
$(function () {
   $.ajax({
        type: "POST",
        contentType: "application/json; charset=utf-8",
        data: JSON.stringify(dataResponse),
        dataType: "html",
        url: '@Url.Action("Display", "LeavedList")',
 
        success: function (mydata) {
            alert("hier");
            $("#test").html(mydata);
 
            $("#test").dialog({
                 autoOpen: false,
                 modal: true,
                 resizable: true
            });
            $("#test").dialog("open");
         },
         error: function (XMLHttpRequest, textStatus, errorThrown) {
                      alert(errorThrown);
         }
 
   });
});
Code de mon controlleur :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
 
[HttpPost]
        public ActionResult Display(ContactAbsence absence)
        {
 
            DataAccess bdAccess = DataAccess.GetInstance();
            Holidays holiday = bdAccess.getHoliday(absence.ContactID, absence.AbsSeqID, absence.AbsSplitSeqID);
 
            ViewBag.Compteur = holiday.Compteur;
            ViewBag.Begin = holiday.Begin.ToString("dd/MM/yy");
            ViewBag.End = holiday.End.ToString("dd/MM/yy");
            ViewBag.Notice = holiday.Notice;
            ViewBag.DayType = holiday.DayType;
 
            //return PartialView("~/Views/Shared/HolidayInfoDialog.cshtml");
            return View("~/Views/Shared/HolidayInfoDialog.cshtml");
        }
Code de la Partial View :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
 
<div data-role="header" data-theme="b">
    <h1>D&eacute;tails cong&eacute;</h1>
</div>
<div data-role="content" class="ui-body">
    <div style="color: black;">
        <div class="ui-grid-a">
 
            <div class="ui-block-a">
                Code : 
            </div>
            <div class="ui-block-b">
                @ViewBag.Compteur
            </div>
            <div class="ui-block-a">
                Date de d&eacute;but :
            </div>
            <div class="ui-block-b">
                @ViewBag.Begin
            </div>
            <div class="ui-block-a">
                Date de fin :   
            </div>
            <div class="ui-block-b">
                @ViewBag.End
            </div>
            <div class="ui-block-a">
                Remarque : 
            </div>
            <div class="ui-block-b">
                @ViewBag.Notice
            </div>
            <div class="ui-block-a">
                Type de jour :
            </div>
            <div class="ui-block-b">
                @ViewBag.DayType
            </div>
        </div>
    </div>
    <a rel='external' data-role='button' href='#' id='simpleclose' data-theme="b" onclick="c();">Close</a>
</div>