熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> .NET編程 >> 正文

當Asp.Net驗證控件遇到FCKeditor

2013-11-13 09:45:57  來源: .NET編程 

  使用RequiredFieldValidator控件驗證FCKeditor是否填寫內容的時候會遇到一個問題

  填寫了內容之後第一次提交還會提示沒有填寫內容這是由於FCKEditor的編輯框采用的是Iframe每次提交的時候首先要將Iframe的內容復制到文本框內再提交但是驗證控件驗證的是實際的文本框在沒觸發提交時這個內容文本框的內容實際上是空的

  換上自定義驗證控件CustomValidator

  設置ClientValidationFunction=checkFckeditorContent;

  利用FCKeditor提供的Javascript API可以解決這個問題

  JavaScript_API#Events>_x/Developers_Guide/JavaScript_API#Events

  在頁面上加入以下腳本

  <script type=text/javascript>

  //<![CDATA[

  var fckeditorContentLength = ;

  function checkFckeditorContent(source arguments)

  {

  argumentsIsValid = (fckeditorContentLength  > );

  }

  function FCKeditor_OnComplete(editorInstance)

  {

  editorInstanceEventsAttachEvent(OnBlur FCKeditor_OnBlur); //附加失去焦點的事件

  }

  function FCKeditor_OnBlur(editorInstance)

  {

  fckeditorContentLength = editorInstanceGetXHTML(true)length;

  //在FCKeditor失去焦點時如果內容不為空則隱藏驗證提示

  if(fckeditorContentLength > ){

  documentgetElementById(<%= this自定義驗證控件ClientID %>)styledisplay = none;

  }

  }

  //]]>

  </script>

  問題到此就解決了


From:http://tw.wingwit.com/Article/program/net/201311/11530.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.