在大多数网站情况下,最好先让网站静态工作。然后添加 Javascript 选项以加快加载速度、ajax 操作等。所以首先只使用普通页面的普通链接,然后继续添加 jQuery 的东西。
这样您可以获得完全相同的结果,但它还允许您支持旧版浏览器、爬虫等。
使用 MVC,这很容易通过具有不同扩展名的简单视图来实现。例如,假设我们要加载产品列表。
我们将有 2 个 url 供服务器响应:
第一个将生成一个经典的完整页面(因此带有导航等):
/pages/products
在此模板中加载产品/索引视图会很聪明,这样您的产品表只会在偏离过程中编码一次。
另一个只会生成包含产品的表格:
/products/index
当然,网址是灵活的,您也可以加载例如:products/index.html 和 product/index.xml。这个例子没关系。只要你有 2 个独立的 url。
这将返回一个正常的完整页面,有一个 div 可能会被 ajax 填充,否则就是不可见:
<a href="/pages/products" id="productslink">Products overview</a>
<div id="products"></div>
然后你添加 jQuery 添加一个 onClick 处理程序到链接:
$('#productlink').click(function(e) {
e.preventDefault(); //make sure the link doesn't work anymore
$('#products').load('/products/index');
});
现在,对于不带 JavaScript 的浏览器和带 JavaScript 的浏览器,您会得到相同的结果。好处是这无关紧要。它会给出相同的结果。
您可以对表单执行相同的操作,只需制作一个有效的 HTML 表单。之后使用 jQuery 附加操作,它将始终有效。