2011-12-27 6 views
1

すでに開いているJqueryダイアログを開くためにリンクをクリックすると、JQueryダイアログとして部分的なビューを開きたいとします。JQueryダイアログで別のJqueryダイアログを開くことはできますか?

できますか?それが可能なら、どのように達成できますか?

編集1:

まずビュー

@model AuctionWebProject.Areas.Admin.Models.CategoryModel 
@{ 
    ViewBag.Title = "Edit Category"; 
    Layout = "~/Views/Shared/_Layout.cshtml"; 
} 
<!DOCTYPE html> 
<html> 
<head> 
    <title>EditCategory</title> 
</head> 
<body> 
    <script src="@Url.Content("~/Scripts/jquery-1.6.2.min.js")" type="text/javascript"></script> 
    <script src="@Url.Content("~/Scripts/jquery.validate.min.js")" type="text/javascript"></script> 
    <script src="@Url.Content("~/Scripts/jquery.validate.unobtrusive.min.js")" type="text/javascript"></script> 
    <script src="@Url.Content("~/Scripts/modernizr-1.7.min.js")" type="text/javascript"></script> 
    <script src="@Url.Content("~/Scripts/jquery-ui-1.8.16.min.js")" type="text/javascript"></script> 
    <script type="text/javascript"> 
     function ShowXsdEditor() { 
      $("#xsdEditor").dialog("open"); 
     } 
    </script> 
    @using (Html.BeginForm()) 
    { 
     @Html.ValidationSummary(true) 
     <fieldset> 
      <legend>CategoryModel</legend> 
      @Html.HiddenFor(model => model.Id) 
      <div class="editor-label"> 
       @Html.LabelFor(model => model.Name) 
      </div> 
      <div class="editor-field"> 
       @Html.EditorFor(model => model.Name) 
       @Html.ValidationMessageFor(model => model.Name) 
      </div> 
      <div class="editor-label"> 
       @Html.LabelFor(model => model.Date) 
      </div> 
      <div class="editor-field"> 
       @Html.EditorFor(model => model.Date) 
       @Html.ValidationMessageFor(model => model.Date) 
      </div> 
      <div class="editor-label"> 
       @Html.LabelFor(model => model.Xsd) 
      </div> 
      <div class="editor-field"> 
       @Html.TextAreaFor(model => model.Xsd, new { disabled = "disabled" }) 
       @Html.ValidationMessageFor(model => model.Xsd) 
       <a href="javascript:void(0)" onclick="ShowXsdEditor();">Xsd Editor</a> 
      </div> 
      <p> 
       <input type="submit" value="Save" /> 
      </p> 
     </fieldset> 
    } 
    <div> 
     @Html.ActionLink("Back to List", "Index") 
    </div> 
    @Html.Partial("XsdEditor", Model) 
</body> 
</html> 

第二ビュー

<script src="@Url.Content("~/Scripts/jquery.validate.min.js")" type="text/javascript"> </script> 
<script src="@Url.Content("~/Scripts/jquery.validate.unobtrusive.min.js")" type="text/javascript"></script> 
<div id="xsdEditor" style="display: none;"> 
    <a href="javascript:void(0)" onclick="ShowDialog();">Add new element</a> 
    <div id="elementList"> 
    </div> 
</div> 
@Html.Partial("AddXSElement", new AuctionWebProject.Areas.Admin.Models.XSElementModel()) 
<script type="text/javascript"> 
    $(document).ready(function() { 
     $("#xsdEditor").dialog({ 
      autoOpen: false, width: 400, height: 330, modal: true, title:'XSD Editor' 
     }); 
    }); 

    function ShowDialog() { 
     debugger; 
     $("#addXSElement").dialog("open"); 
    } 
</script> 

私はthe fiddle IによるjQueryののV 1.6.2とjQuery宇井1.8.12

+1

質問する前に試しましたか? $( '#otherDialog')。dialog( 'open') 'を呼び出すと、新しいダイアログが最初のダイアログの上に表示されます。 –

+0

私は何も起こりません –

+2

私のためにうまく動作します:http://jsfiddle.net/MZAtp/。あなたのコードを私たちに教えてください。 –

答えて

0

問題を発見した場合、ドキュメントの準備が整っていたJQuery関数が正常に動作しなかったようです。 ダイアログのJavaスクリプトを並べ替えた後、問題は消えました。

3

を使用作成した場合、問題なく表示されます。

+0

はい、それは動作しますが、私のコードではありません –

+0

それから別の質問に移動する必要があります。 –

関連する問題