1
我已经开始使用Ajax进行游戏,发现一个(希望是)小问题,我似乎无法找到答案。当输入字段中有HTML标签时,未提交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>标签的文本”)时,我的操作方法根本不会被调用。
有人知道为什么会发生这种情况吗?
非常感谢。