我已经使用jQueryMobile和ASP.NET MVC框架构建了我的网页。现在,我需要使用PhoneGap将其发布到应用商店。我在某处读到PhoneGap仅支持HTML,CSS和JavaScript。这是否意味着它不接受我的ASP.NET页面?
更新1:
如果我使用纯HTML页面并使用jQuery $ .ajax函数调用Web服务,那么我如何确保页面的head部分加载一次。我的意思是当只使用HTML页面时如何创建母版页架构?
答案 0 :(得分:3)
您的.asp
页面必须从应用程序远程托管。但是,您可以通过应用程序向.asp
页面发出AJAX调用。从服务器检索数据(在这种情况下,同域策略不适用,因此您可以对任何想要的域进行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调用的回调函数来“增强”从Web服务收集的代码。
答案 1 :(得分:-6)
任何阅读此主题的人都可能想要考虑删除.NET MVC并仅使用静态.htm文件。您可以通过可以通过jQuery访问的简单.ashx文件来调用.NET代码。传递XML或JSON并返回通用的Dataset对象。多年来我一直这样做,当我需要快速解决方案时,它给了我一个很好的解决方法。我甚至不再需要使用中间层代码,而是倾向于将我的所有业务规则放在SQL Server存储过程中,强烈推荐,并且与PhoneGap等移动平台一起工作。