2013-01-10 51 views
0

我是sencha觸控技術的新手。我使用IBMworklight + Sencha Touch創建了示例應用程序。有一個名爲textfield和button.i的表單,希望在點擊按鈕時將數據存儲到MySQL中。但是,當點擊按鈕時,它會給出錯誤。我無法解決錯誤。我附加了.js文件Form Code !和服務器端代碼"php & error code"。請幫助我。我在等你的幫助。我在Sencha Touch中遇到了錯誤原因http:// localhost:8080不允許通過訪問控制 - 允許來源

回答

0

由於您的瀏覽器中存在跨站點腳本編寫限制,您無法訪問除爲應用程序提供服務之外的其他位置的資源。有幾件事情可以做:

  • 滿足您的應用程序的資產作爲文件資源(如PhoneGap的那樣)
  • 使用JSONP您取得
  • 您的數據,請用您的請求轉發到本地代理一個遠程主機(很好的開發)。例如。 http://benalman.com/projects/php-simple-proxy/
+0

嗨,羅布感謝給replay.can你給的如何在Chrome中啓用CORS如您在上面提到使用JSONP步驟。 –

+0

嗨,好吧,我可以嘗試,但Sencha文檔說明了一切:http://docs.sencha.com/touch/2-1/#!/api/Ext.data.proxy.JsonP –

+0

我閱讀sencha文檔但它並沒有給出正確的信息,即在哪裏放置代碼。這個文檔給初學者造成了困惑。我嘗試使用模型目錄給出的代碼,最終它會給出錯誤。 –

0

試試這樣說:

Ext.Ajax.request({ 
        url : "http://test.com/form.php", 
        params : values, 
        method: 'POST', 
        withCredentials: false, 
        useDefaultXhrHeader: false, 
        success: function (result, request){ 
        Ext.Msg.alert('Thx','Form saved!'); 
        form.unmask(); 
        form.reset(); 
        }, 
        failure: function (result, request){ 
         Ext.Msg.alert('Sorry', 'Error!'); 
         form.unmask(); 
        } 
      }); 
相關問題