2012-02-07 39 views
0

我在經典的asp應用程序的jQuery內聯厚盒問題。 的代碼看起來是這樣的:內聯jQuery的厚盒子不關閉與JavaScript驗證

的超級鏈接標籤的屬性爲下:

<a>href="#TB_inline?height=295&width=604&inlineId=rev-modal" onclick="GetAuth()" id="btnAuthorize" class="thickbox">Authorize</a> 

現在我已經創建了一個JavaScript,使AJAX調用和成果的基礎上,要麼顯示錯誤或向前移動。在我的javascript內我顯示錯誤div並關閉厚框。它與ajax回調項/ erros正常工作。但是現在我已經將JavaScript驗證添加到頁面。現在,如果發現輸入無效,我的密碼箱不會消失。我可以從javascript驗證中看到錯誤div和錯誤,但它全部在我不想要的灰色透明厚盒內。當我點擊頁面時,thickbox就會消失。

我的JavaScript是這樣的:

function GetAuth() { 
    if (ValidInputs() == "") { 

    } 
    else { 
     $("#errordiv").show(); 
     $("#errordetail").html(ValidInputs()); 
     self.parent.tb_remove(); 
    } 
    return false; 
} 
+1

您有語法錯誤。 Authorize Jason 2012-02-07 22:41:30

回答

1

您的錨語法錯誤。另外,我會更像這樣構造你的代碼。

另外,如果你想爲這樣的問題製作一個jsfiddle,那麼回答測試的人會更容易:http://jsfiddle.net

function GetAuth() { 
    if (ValidInputs() != "") { 
     $("#errordetail").html(ValidInputs()); 
     $("#errordiv").show(); 
     self.parent.tb_remove(); 
    }else 
    { 
      alert('Did you expect this to happen?'); 
    } 
    return false; 
} 

<a href="#TB_inline?height=295&width=604&inlineId=rev-modal&modal=true" onclick="GetAuth()" id="btnAuthorize" class="thickbox">Authorize</a> 
0

感謝您的輸入。我最終通過將所有驗證移入回調頁面本身來解決此問題。