2

何らかの理由で、で自分RadEditor自身のサイズを変更することができませんwindow.resize。私のjavascript関数getsCalledですが、RadEditorの外観を変更するものは何もないようです。

そもそも、自分でサイズ変更すると思っていたのですが、そうではありません...サーバーからコンテンツが更新されて初めてサイズ変更されます。

これが私のRadEditor

 <telerik:RadEditor ID="RadEditor1" Runat="server"
                        OnClientLoad="OnRadEditorClientLoad" 
                        OnClientCommandExecuting="OnClientCommandExecuting"
                        EnableResize="true" ContentAreaMode="Div"
                        AutoResizeHeight="true"
                        Height="20px"
                        Width="100%" 
                        EditModes="Design"
                        Skin="Web20">
  </telerik:RadEditor>

これが私のjavascript関数です:

window.onresize = ResizeControls;
    function ResizeControls() {
        var editor = $find("<%=RadEditor1.ClientID %>");
        editor.get_element().style.width = getDocWidth() + "px";
        editor.get_contentArea().style.width = getDocWidth() + "px";
    }

getDocWidth()正しく変更された幅を返すのはどこですか。(そして、はい、「px」はそこにいなければなりません)。エディターの幅を確認すると、正しく変更されています...コントロールを更新または再描画する必要があります。

したがって、最初のロードでは、ウィンドウの幅RadEditorを取得しています。100%しかし、window.resizefrom1000pxから800px、の後に、RadEditor'の幅はまだ1000pxです。


明示的な解決策:次の場合に削除Width=100%して調整widthOnClientLoadます。

 <telerik:RadEditor ID="RadEditor1" Runat="server"
                    OnClientLoad="OnRadEditorClientLoad" 
                    OnClientCommandExecuting="OnClientCommandExecuting"
                    EnableResize="true" ContentAreaMode="Div"
                    AutoResizeHeight="true"
                    Height="20px"
                    EditModes="Design"
                    Skin="Web20">
  </telerik:RadEditor>


    function OnRadEditorClientLoad(editor, args) {
        editor.get_element().style.width = getDocWidth()= + "px";
    }

    window.onresize = AsjustRadEditorsWidth;
    function AsjustRadEditorsWidth() {
        var editor = $find("<%=EnonceContainer.ClientID %>");
        editor.get_element().style.width = getDocWidth() + "px";
    }
4

1 に答える 1

1

ASP.NETAJAXドキュメントのRadControlsRadEditorsetSize

setSizeメソッドの呼び出しに加えて、エディターのdiv要素のmin-widthおよびmin-heightcssプロパティをリセットしてみてください。

$telerik.$($find("<%=RadEditor1.ClientID %>")).css({"min-width": "", "min-height": ""});
于 2012-10-26T19:22:38.783 に答える