2012-06-22 59 views
0

返回我有這樣我的操作方法:JavaScript不加載時JSON結果被從操作方法在MVC3

public ActionResult Register() 
    { 
     RegisterModel rm = new RegisterModel(); 
     return Json(rm, JsonRequestBehavior.AllowGet); 

    } 

,當我瀏覽到該行動的方法,我沒有看到這對任何內容正在加載的查看頁面。所有我看到的是這樣的:

{ 「用戶名」:空, 「電子郵件」:空, 「密碼」:空, 「ConfirmPassword」:空}

RegisterModel包含這些屬性。

但是,如果我這樣做:

public ActionResult Register() 
    { 
     return view(); 

    } 

我可以看到的視圖頁面加載內容,當我瀏覽到同樣的動作。

任何人都可以告訴我如何返回jsonresult時,在視圖頁上呈現所有javascript和html內容?

+0

那麼JSON不是HTML那麼.....? – asawyer

+0

您希望返回什麼輸出* Json(rm)*?它看起來完全如我所料 - 一個具有空屬性的JSON字符串(因爲你沒有設置它們中的任何一個)。 – McGarnagle

+0

好,我有我的一些看法頁面類似下面的javascript代碼:$ .getJSON(的GetURL, 功能(數據){ $。每次(數據,功能(鍵,VAL){VAR 的obj = {}; OBJ [ 「鍵」] =鍵; $ .template( 「elementTemplate」,元件); $ .tmpl( 「elementTemplate」,OBJ).appendTo( 「#集裝箱」); }); });我使用它來解析json內容並使用模板以格式顯示。但這裏的問題是,我沒有看到上面的腳本被加載? – suk

回答

0

任何人都可以告訴我如何返回jsonresult時,在視圖頁上呈現所有javascript和html內容的內容?

JsonResult是一種類型的動作結果的該序列的模型(僱員,產品..)成Json格式並返回給客戶端。 Json是一種類似xml的格式。當你返回Json時,你不能附加腳本,CSS或其他類似的東西。

如果你想用CSS,JavaScript等返回HTML,那麼你應該使用ViewResultreurn View())。如果你想返回一段html而不是完整的文檔,你可以使用PartialViewResultreturn PartialView())。