Asp.net mvc 当输入字段中有HTML标记时,不提交Ajax表单
我开始使用Ajax,发现了一个(希望如此)似乎无法找到答案的小问题 我在页面上生成一个Ajax表单列表,代码如下所示Asp.net mvc 当输入字段中有HTML标记时,不提交Ajax表单,asp.net-mvc,asp.net-ajax,Asp.net Mvc,Asp.net Ajax,我开始使用Ajax,发现了一个(希望如此)似乎无法找到答案的小问题 我在页面上生成一个Ajax表单列表,代码如下所示 using (Ajax.BeginForm("FixTranslation", new { translationId = errorGroup.Key.Id }, new AjaxOptions { UpdateTargetId = "targetCell_" + errorList.Key.Id })) { <table>
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>
}
如果输入字段中没有尖括号,则可以正常发送表单。但是,当输入字段中有一些尖括号(例如“This is text with tags”)时,根本不会调用我的操作方法
有人知道为什么会这样吗
非常感谢。已解决。这不是特定于Ajax表单的,原因是请求验证,对于特定的操作方法,可以通过这种方式关闭请求验证:
[ValidateInput(false)]
public ActionResult FixTranslation(string projectId, int translationId, string text)
{
...
}
解决了。这不是特定于Ajax表单的,原因是请求验证,对于特定的操作方法,可以通过这种方式关闭请求验证:
[ValidateInput(false)]
public ActionResult FixTranslation(string projectId, int translationId, string text)
{
...
}