뷰 내에서 라디오 버튼 선택을 통해 토글 된 3 개의 부분 뷰가 있습니다. 각 부분보기에는 자체 제출 입력이 있으며 두 개의 부분보기에는 tinyMCE 텍스트 영역이 있습니다. tinyMCE 텍스트 영역을 포함하는 부분이 하나 밖에 없었을 때 .triggerSave()를 사용하여 유효성을 검사 할 수 있었지만 이제는 두 번째 tinyMCE 텍스트 영역을 추가 했으므로 tinyMCE 텍스트 영역 중 하나를 전달할 수 없습니다 확인.MVC3에서 유효성 검사를 위해 tinyMCE 텍스트 영역을 가져올 수 없습니다.
나는 비슷한 질문에 이미 많은 해결책을 시도했지만,이 텍스트 영역을 검증에 통과 시키는데 성공하지 못했습니다. 여기
public ActionResult _AddSchemaRow(int id)
{
SchemaRow schemaRow = new SchemaRow();
schemaRow.DatabaseSchemaID = id;
schemaRow.SchemaIndex = DatabaseSchema.GetSchemaHeadersByDatabaseSchemaID(id).Count() + 1;
return PartialView(schemaRow);
}
는 컨트롤러이다
<script type="text/javascript">
$(document).ready(function() {
tinyMCE.init({
mode: "specific_textareas",
editor_selector: "mceEditorForAddRow",
theme: "simple",
width: "500",
height: "300"
});
});
여기
@using(Html.BeginForm("_AddSchemaRow","Database_Schema")
{
@Html.ValidationSummary(true)
<script type="text/javascript">
$("#CreateRow").click(function() {
tinyMCE.triggerSave();
});
</script>
<table>
....
....
<tr>
<td>
@Html.LabelFor(model => model.SchemaElement)
</td>
<td>
@Html.TextAreaFor(model => model.SchemaElement, new { @class = "mceEditorForAddRow" })
@Html.ValidationMessageFor(model => model.SchemaElement)
</td>
</tr>
....
....
</table>
<p>
<input id="CreateRow" type="submit" value="Create" />
</p>
}
이 제 1 부분에 대한 콘트롤의 동작이다 : 여기
은 제 1 부분에 TinyMCE에 관련된 코드 이 첫 번째 부분에 대한 POST 작업 :두 번째 부분은 "CreateSchemaHeader"인 제출 입력 ID를 비롯한 모든 해당 필드에서 "SchemaRow"대신 "SchemaHeader"를 포함한다는 점을 제외하고 위의 첫 번째 부분과 동일하게 설정됩니다. 나는 예제 코드가 내 문제에 대한 충분한 설명을 제공해야한다고 생각한다. 필요한 경우 다른 부분 코드를 추가 할 수 있습니다. 솔루션을 찾는 데 도움을 주셔서 미리 감사드립니다.