2017-12-07 6 views
0

現在、ビュー内で問題のないRuleEditorをレンダリングする完全なページがあります。私はこれを正しくダイアログに表示させるために問題に遭遇しました。CodeEffects RuleEditorがMVCダイアログでレンダリングされない

私は完全なビューとダイアログビューの間でオブジェクトをロードするのと同じ正確なロジックを使用しています。ここで

はRuleEditorは例のルールとの完全なビューでどのように見えるかです:: RuleEditor Full view

ここRuleEditor表示(悪いレンダリング)は、このダイアログ内のdivコンテンツがある RuleEditor within dialog 同じルールのためであります

<div id="ruleModel" name="ruleModel"> 
    <input type="hidden" id="ruleModelData" name="ruleModel"> 
    <a href="http://codeeffects.com" ce002="false">.</a> 
</div> 

html/javascriptコンソールエラーはありません。なぜこれが起こっているのかについての考えはありますか?

ありがとうございます!

******* UPDATE ***** ここでダイアログの.cshtml内容は次のとおりです。

@model RuleViewModel 

<link href="@Url.Content("~/Content/Common.css")" rel="stylesheet" 
type="text/css" /> 

@{ 
    ViewBag.Title = "Edit Rule1"; 
    Layout = null; 
    Html.CodeEffects().Styles() 
     .SetTheme(ThemeType.Gray) 
     .Render(); 
} 


@using (Html.BeginSecureForm("Save", "Rule")) 
{ 
    @Html.ValidationSummary(true) 
    <br /> 
    <b>Rule Name:</b> @Html.TextBoxFor(m => m.RuleName, new { id = 
"RuleName", @class = "form-control" }) 

    <fieldset> 
     <div class="main"> 
      <div class="area"> 
       <div style="margin-top:10px;"> 
        @{ 
         Html.CodeEffects().RuleEditor() 
             .Id("ruleModel") 
             .ShowToolBar(false) 
             .Mode(RuleType.Evaluation) 
             .Rule(ViewBag.Rule) 
             .DataSources(Model.DataSources) 
             .ContextMenuRules(Model.Rules) 
             .Render(); 

        } 
        @{ 
         Html.CodeEffects().Scripts().Render(); 
        } 
       </div> 
       <div class="modal-footer"> 
        <input class="btn btn-default" submit" type="submit" 
value="Save" /> 
        <button type="button" class="btn btn- 
default">Cancel</button> 
       </div> 
      </div> 
     </div> 
    </fieldset> 
} 

私はAJAXの例から取って、すべてやった2 更新# RuleEditorの設定は、AJAXポスト/コントローラメソッドを介して行います。それはうまくいくように見えますが、コンテキストメニューが切り離されているようです。 (Red Circle内の領域を参照してください)RuleEditor In Dialog, Context Menu behind

答えて

0

ほとんどの場合、ダイアログはメインエディタのスクリプトとサーバーからロードされたすべてのjson設定から「切断」されています。別の可能性は、それらのjson設定値がクライアントに到達する前にダイアログがエディターをレンダリングしようとしていることです。

+0

あなたのお返事ありがとうございます、アレックス!私はオリジナルの投稿を更新して、cshtmlのコンテンツを表示しました(あなたが私のRuleEditor.Render()とScripts.Render()が不在であると言っている場合)。私はあなたが違ったことを言っていると思います。レンダリング/ JSONが適切なタイミングで行われることを確実にするためにどこから始めるべきですか? –

関連する問題