2011-10-11 96 views
2

我已經使用jQueryMobile和ASP.NET MVC框架構建了我的網頁。現在,我需要使用PhoneGap將它發佈到應用商店。我在某處讀到,PhoneGap只支持HTML,CSS和JavaScript。這是否意味着它不會接受我的ASP.NET頁面?jQueryMobile,PhoneGap和ASP.NET MVC

更新1:

如果我使用普通的HTML頁面,並使用jQuery $就功能,那麼我將如何確保該頁面的頭部被加載一次調用Web服務。我的意思是當只使用HTML頁面時,我如何創建主頁面架構?

回答

3

您的.asp頁面將不得不從應用程序遠程託管。不過,您可以將AJAX通話從您的應用中轉到.asp頁面。從您的服務器檢索數據(同域策略不適用於這種情況,因此您可以對任何您想要的域進行AJAX調用)。與大多數臺式電腦一樣,移動設備將無法解析.asp腳本,因爲設備上沒有運行該語言的解釋器。

一個例子:

$('#homepage_id').bind('pagecreate', function() { 
    $.get('http://path.to.server/and/file.asp', function (data) { 
     $('#homepage_id').find('[data-role="content"]').html(data); 
    }); 
}); 

注:上面的例子就需要從腳本在服務器上運行但它是更好的輸出有效的HTML標記大部分來自服務器的時間來輸出JSON,並將其解析成您的JavaScript代碼中的有效HTML標記。

更新1:

我將包括所有在應用程序的索引頁所需的JavaScript功能,並使用回調函數的AJAX調用,以「提升」,從您的網絡服務正在收集的代碼。

+0

感謝您的回覆!我在原始問題中增加了一個附加問題。 – azamsharp

+3

什麼.asp文件花花公子?你迷路了! ASP.NET MVC!=古代ASP – Adaptabi

+2

@DNetNet我不熟悉任何ASP語言。 '.aspx',是嗎?它是否改變了我提供的答案(似乎沒有,因爲移動設備仍然無法解析它)? – Jasper

-6

閱讀此主題的任何人都可能想要考慮刪除.NET MVC並僅使用靜態.htm文件。你可以通過一個簡單的.ashx文件來調用你的.NET代碼,這個文件可以通過jQuery訪問。傳遞XML或JSON並獲取一個通用數據集對象。我多年來一直這樣做,當我需要快速解決方案時,它給了我一個很好的解決方法。我甚至不再打擾中間層代碼,寧願將所有業務規則放在SQL Server存儲過程中,強烈推薦,並且使用PhoneGap等移動平臺運行GREAT。

+4

高度**不推薦**。在未來修改這樣的整體解決方案是一場噩夢。 –

+0

它是一個假的答案。 – KMX