razor功能非常强大,但是本身并不能做到无刷新,所以需要配合ajax使用。本文通过一个例子给大家介绍使用ajax局部更新razor页面,需要的朋友参考下吧
razor功能非常强大,但是本身并不能做到无刷新,所以需要配合ajax使用
本文就做一个简单例子,实现razor配合ajax做到局部刷新。
首先,我们创建一个mvc项目
让我们创建一个简单的controller book
然后对其添加一个视图,并且添加上一些简单的html代码
@{
viewbag.title = "index";
layout = null;
}
<!doctype html>
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0">
</head>
<body>
<h2>index</h2>
@html.actionlink("点击我", "part","book");
<p id="partial" ></p>
@scripts.render("~/bundles/jquery")
<script type="text/javascript">
$("a").click(function () {
$.ajax({
url: "/test/book/part/1",
success: function (result) {
console.log(result);
$("#partial").html(result);
},
error: function (msg) {
console.log(msg);
}
})
return false;
});
</script>
</body>
</html>
这里我添加了一个e388a4556c0f65e1904146cc1a846bee,并且给了个id=partial,再我点击@html.actionlink时会触发javascript里的方法,使用ajax去访问/test/book/part/1这个路径,请求成功以后会在e388a4556c0f65e1904146cc1a846bee里构建我请求的html,这其实就是局部刷新的原理
这是part的代码,然后我们给part也添加一个视图
part的代码可以非常简单,然后我们开启我们的项目
我们不断点击 按钮“点击我”
页面就会不停的发生变化。
这里需要注意,在使用ajax请求时,url一定要写完整,比如我的controller在area下的book文件夹下名为test,action为part,那么url则是 /test/book/part,不能缺少/test,否则就会出现以下错误
可以看到,如果url没有写全的话,action返回的view其实是错误的路径。
上面是我整理给大家的,希望今后会对大家有帮助。
相关文章:
struts2和ajax数据交互(图文教程)
利用ajax提交form表单到数据库详解(无刷新)
原生ajax写的上拉加载实例(图文教程)
以上就是使用ajax局部更新razor页面(图文教程)的详细内容。