2016-05-30 34 views
1

我正在開發一個科爾多瓦應用程序 - 我正在使用科爾多瓦6.2.0。JQuery返回未捕獲的錯誤:科爾多瓦已經定義

我得到一個未捕獲的錯誤:Cordova已經定義了,當點擊一個按鈕時。當它被點擊時,通過刪除使用Javascript的display:none樣式,可以看到一些以公用類名稱分組的隱藏組件。

該錯誤源於JQuery。我嘗試了不同版本的jQuery,包括最新版本。奇怪的是,JQuery代碼沒有在被觸發的腳本中使用。該頁面未被重新加載。

在HTML我打電話這些腳本:

<script src="cordova.js"></script> 
<script src="scripts/platformOverrides.js"></script> 

<script src="scripts/jquery-1.11.1.min.js"></script> 
<script src="js/jquery.mobile-1.4.5.js"></script> 

另外,在HTML我有這2個按鈕:

<button onclick="ForgotPassword()" style="background-color: #f79629; border-style:none; width: 200px; height: 40px; color: white; border-radius:5px;">Send Reset Code</button> 
<button class="hideTD" id="CPbtn"  onclick="ChangePassword()" style="display:none; background-color: #f79629; border-style:none; width: 200px; height: 40px; color: white; border-radius:5px;">Change Password</button> 

正如你所看到的第二個按鈕是隱藏的。當點擊第一個按鈕時,這將再次與其他組件一起顯示。

這是JS函數的開始 - ForgotPassword():

var username = document.getElementById("Username").value; 

if (username != '') { 
    $.ajax({ 
     type: 'GET', 
     url: ResetPasswordUrl, 
     data: { username: username }, 
     success: function (data) { 

      if (data == '') { 

       var nodes = document.getElementsByClassName("hideTD"); 

       for (var i = nodes.length, n = 0; n < i; n++) { 
        nodes[n].style.display = ''; 
        } 

       alert("A code has been sent to your email address"); 

在點擊發送復位碼時,執行上面的代碼。 for循環訪問所有類爲hideTD的組件,並刪除display:none樣式。據我所知,沒有應該發生衝突的JQuery;此外,科爾多瓦已經定義錯誤對我沒有意義。

+0

抱歉投票停止,但沒有提供任何代碼。 – nyluje

+0

好吧讓我們添加代碼:) –

+0

已添加代碼。謝謝 –

回答

0

什麼固定我的問題,是添加:

$("#form_id").submit(function() { 
    return false; 
}); 

在OnDeviceReady()方法。這是因爲我有兩個相同形式的按鈕。我仍然無法解釋'科爾多瓦已經定義'的錯誤。

相關問題