为了账号安全,请及时绑定邮箱和手机立即绑定

MVC3----使用Jquery模板异步加载数据

标签:
JQuery

*首先需要安装JQuery模板(右键引用->管理NuGet程序包->搜索jquery.templates->安装)

--引用脚本

<script type="text/javascript" class="lazyload" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAANSURBVBhXYzh8+PB/AAffA0nNPuCLAAAAAElFTkSuQmCC" data-original="@Url.Content("~/Scripts/jQuery.tmpl.min.js")"></script>


--控制器代码:

public ActionResult QuickSearch(string term){     var list = db.Demos.Where(r => r.Name.Contains(term)).Select(r => r).ToList();     return Json(list, JsonRequestBehavior.AllowGet);}


--视图代码:

①:

<script type="text/javascript">    $(function () {        //表单提交触发        $("#personsearch").submit(function (event) {            event.preventDefault(); //重要(阻止直接提交)            var form = $(this);            $.getJSON(form.attr("action"), form.serialize(), function (data) {                $("#personTemplate").tmpl(data).appendTo("#data-ul");            });        });    });</script><!--表单--><form id="personsearch" method="get" action="@Url.Action("QuickSearch", "PersonError")">    <input type="text" name="term" />    <input type="submit" value="提交" />    <img id="img" class="lazyload" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAANSURBVBhXYzh8+PB/AAffA0nNPuCLAAAAAElFTkSuQmCC" data-original="@Url.Content("~/Content/img/017.gif")"  /></form><!--模板--><script type="text/x-jquery-tmpl" id="personTemplate">    <li>${Name}</li></script><!--容器--><div id="searchresults">    <ul id="data-ul"></ul></div>



②:使用ajax控制请求的过程(比如加载中显示加载动态,加载失败弹出提示框等等)

<script type="text/javascript">    $(function () {        //表单提交触发        $("#personsearch").submit(function (event) {            event.preventDefault(); //重要(阻止直接提交)            var form = $(this);            $.ajax({                url: form.attr("action"),//链接                data: form.serialize(),//数据                beforeSend: function () { $("#img").show(); },//开始请求(加载动画)                complete: function () { $("#img").hide(); },//请求完成                error: function () { alert("失败"); },//请求失败                success: function (data) {//请求成功                    $("#personTemplate").tmpl(data).appendTo("#data-ul");                }            })        });    });</script><!--表单--><form id="personsearch" method="get" action="@Url.Action("QuickSearch", "PersonError")">    <input type="text" name="term" />    <input type="submit" value="提交" />    <img id="img" class="lazyload" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAANSURBVBhXYzh8+PB/AAffA0nNPuCLAAAAAElFTkSuQmCC" data-original="@Url.Content("~/Content/img/017.gif")"  /></form><!--模板--><script type="text/x-jquery-tmpl" id="personTemplate">    <li>${Name}</li></script><!--容器--><div id="searchresults">    <ul id="data-ul"></ul></div>







点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消