我正在为文本框使用 summernote 插件: http://summernote.org/#/getting-started#basic-api
这是我使用 summmernote 的表格:
<div class="modal-body" style="max-height: 600px">
@using (Html.BeginForm())
{
@Html.ValidationSummary(true)
<fieldset class="form-horizontal">
<div id="textForLabelLanguage"></div>
<button type="submit" class="btn btn-primary">Save changes</button>
@Html.ActionLink("Cancel", "Index", null, new { @class = "btn " })
</fieldset>
}
</div>
<script type="text/javascript">
$(document).ready(function () {
$('#textForLabelLanguage').summernote();
});
</script>
现在,在我的 Controller 中,这是我的代码:
public ActionResult Create(UserInfo newInfo , [Bind(Prefix = "textForLabelLanguage")] string textForLabelLanguage)
{
//logic here
}
现在的问题是 textForLabelLanguage
参数始终为空。
发生这种情况是因为我必须在提交表单时将 $('#textForLabelLanguage').code();
传递给 MVC,但我不知道该怎么做!
我该如何解决我的问题?
最佳答案
我找到了解决问题的方法。这就是我让 Controller 获取正确信息的方式:
<div class="modal-body" style="max-height: 600px">
@using (Html.BeginForm())
{
@Html.ValidationSummary(true)
<fieldset class="form-horizontal">
<textarea name="textForLabelLanguage" id="textForLabelLanguage" />
<button type="submit" class="btn btn-primary">Save changes</button>
@Html.ActionLink("Cancel", "Index", null, new { @class = "btn " })
</fieldset>
}
</div>
<script type="text/javascript">
$(document).ready(function () {
$('#textForLabelLanguage').summernote();
});
</script>
基本上,如果我使用带有名称的文本区域而不是输入或其他任何东西,它就可以工作!
但是,请注意,即使此解决方案有效,我也会在 Controller 中收到一条错误消息:
从客户端检测到具有潜在危险的 Request.Form 值
发生这种情况是因为我允许使用 HTML。但这是另一个问题的问题!
关于c# - Summernote 和 MVC c# 中的表单提交,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29540502/