2011-03-29 57 views
0

我工作的MVC 2,使用Ajax.BeginForm如下<ABC與Ajax.BeginForm

<script type="text/javascript" language="javascript"> 
    function ProcessResult(responsedContent) { 
     var response = responsedContent.get_response(); 
     var result = response.get_object(); 
     alert(result); 
    } 
</script> 
    <%using(Ajax.BeginForm("Test","Home", new AjaxOptions{ OnComplete = "ProcessResult"})) 
{%> 
    <input type="text" id="txtTest" name="txtTest" /> <input id="submitTest" type="submit" value="Submit" tabindex="3"/> 
<%}%> 


    public JsonResult Test(string txtTest) 
    { 
     return Json(txtTest); 
    } 

能否請你指導我如何處理的情況下用戶輸入<abc到文本框txtTest?非常感謝!

回答

0

你可以嘗試裝飾您發佈與[ValidateInput]屬性控制器動作:

[HttpPost] 
[ValidateInput(false)] 
public JsonResult Test(string txtTest) 
{ 
    return Json(txtTest); 
} 

另外,如果您的應用程序針對.NET 4.0編譯您可能需要添加以下在你的web.config:

<httpRuntime requestValidationMode="2.0" /> 
+0

非常感謝Darin。但它不起作用。測試功能尚未被調用。我得到運行時錯誤「Microsoft JScript運行時錯誤:Sys.ArgumentException:無法反序列化。數據不符合有效的JSON。 參數名稱:data」MicrosoftAjax.js中存在異常 – khoailang 2011-03-30 03:18:16

相關問題