CKeditorとAsp.Net検証コントロールの問題
1579 ワード
Asp.Netでは、CKeditorにRequiredField Validator検証コントロールを追加すると、フォームをコミットする際に2回ポイントが必要になる場合がありますが、ポイントが1回目の場合は検証に失敗し、ポイントが2回目の場合はコミットできます.なぜなら、ポイントが1回目のときにCKeditorの内容がTextareaコントロールに負になっていないからです.解決方法:
<script src="_scripts/jquery-1.3.2.min.js" type="text/javascript"></script>
<script type="text/javascript" src="ckeditor/ckeditor.js"></script>
<script type="text/javascript" src="ckeditor/adapters/jquery.js"></script>
<script type="text/javascript" language="javascript">
$(document).ready(function() {
$('#TextBox1').ckeditor();
});
function UpdateContent() {
var ckeditorinstance = $('#TextBox1').ckeditorGet();
ckeditorinstance.updateElement();
}
</script>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:TextBox ID="TextBox1" TextMode="MultiLine" runat="server"></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server"
ControlToValidate="TextBox1" ErrorMessage="No content in CKEditor!"></asp:RequiredFieldValidator>
</div>
<asp:Button ID="btnSave" OnClientClick="javascript:UpdateContent()" runat="server" Text="Save" onclick="btnSave_Click" />