当输入字段中有HTML标记时,未提交Ajax表单

| 我已经开始使用Ajax,发现了(希望)一个小问题,但似乎找不到答案。 我在页面上生成了一个Ajax表单列表,代码看起来像这样
using (Ajax.BeginForm(\"FixTranslation\", new { translationId = errorGroup.Key.Id }, new AjaxOptions { UpdateTargetId = \"targetCell_\" + errorList.Key.Id }))
{            
    <table>
        <tbody>
            <tr><td>@errorGroup.SourceText</td></tr>
            <tr><td id=\"@(\"targetCell_\" + errorGroup.Id)\"><input type=\"text\" name=\"text\" id=\"@(\"target_\" + errorGroup.Id)\" value=\"@(errorGroup.TargetText.Replace(\' \', (char)0x00A0))\" /><input type=\"submit\" value=\"Fix\" /></td></tr>

                @foreach (var error in errorGroup.Value)
                {            
                    <tr><td>@error.Description</td></tr>
                }                

            </tbody>
        </table>
    }
在控制器中,我有以下操作:
public ActionResult FixTranslation(string projectId, int translationId, string text)
{
    if (Request.IsAjaxRequest())
    {
        return Content(\"You entered: \" + new HtmlString(text));
    }

    return RedirectToAction(\"GetProjectOverview\", new { projectId = projectId });
}
当输入字段中没有尖括号时,这可以正常工作,表格可以正确发送。但是,如果在输入字段中有一些尖括号(例如\“”这是带有<1> tags \“的文本),则根本不会调用我的action方法。 有人知道为什么会这样吗? 非常感谢你。     
已邀请:
        解决了。它不是特定于Ajax表单的,原因是请求验证,可以通过这种方式针对特定的操作方法将其关闭:
[ValidateInput(false)]
public ActionResult FixTranslation(string projectId, int translationId, string text)
{
    ...
}
    

要回复问题请先登录注册