MVC的JavaScriptResult使用


JavaScriptResult的使用有兩個必要的前提:

1.Ajax

2.jquery.unobtrusive-ajax.js

使用代碼示例

controller

public ActionResult JavaScriptTest()
{
    return JavaScript("alert('Controller.JavaScriptResult test');");
}

View

<script src="~/Scripts/jquery-1.11.2.js"></script>
<script src="~/Scripts/jquery.unobtrusive-ajax.min.js"></script>

<!--用Ajax生成-->
@Ajax.ActionLink("display", "Display", new AjaxOptions())
@using (Ajax.BeginForm("Display", new AjaxOptions()))
{ 
}
<!--html代碼-->
<a data-ajax="true" href="/Area/SubNode/Display">display</a>
<form action="/Area/SubNode/Display?id=1" data-ajax="true" id="form0" method="post"></form>

仔細看View里面的代碼,上面的script引用加上的jquery.unobtrusive-ajax.js,下面data-ajax=true。兩者缺一不可,否則返回的網頁就不是彈框,而是網頁源代碼。

成功:

失敗:

還有一種失敗的表現形式是下載頁面文件。失敗原因都是上面的兩個方面沒有寫好。

 

JavaScriptResult里面的string除了可以調用系統的函數以外,還可以執行指定的js。

public ActionResult ServerMethod(int id, string name)
{
    string result = "客戶端傳遞過來的id:" + id + ",名字:" + name;
    return JavaScript(@"$(""#result"").html(""" + result + @""");");
}

 

參考資料:http://www.tuicool.com/articles/VJR7Zv

http://mazharkaunain.blogspot.com/2011/02/how-to-use-aspnet-mvc-javascriptresult.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM