RadEditor验证消息仅在回发后发送

时间:2012-08-13 07:53:00

标签: c# javascript asp.net telerik radeditor

我有一个带有必填字段验证器的RadEditor。必填字段验证的错误消息仅在回发后消失。我在radeditor中输入任何文字后,它并没有消失。

我曾尝试为onblur事件编写javascript并隐藏错误消息。但它在IE8中没有按预期工作。一旦我输入任何文本,错误消息正在消失,但如果我删除文本并使radditor再次空白,我不会再次收到错误消息。因此,它没有正确验证所需的字段。

我为“onblur”活动撰写的javascript:

function DisableRequiredMessage(editor, args) {
var element = document.all ? editor.get_document().body : editor.get_document();
$telerik.addExternalHandler(element, "blur", function(e) {
var editor1 = $find("ctl00_ContentPlaceHolder1_ContractExpirationAlertEditor");
var message1 = editor1.get_html();
if (message1 == '<br>' || message1 == '<p>&nbsp;</p>') 
document.getElementById('ctl00_ContentPlaceHolder1_spnEmailBody').style.display = 'block';
else                               
document.getElementById('ctl00_ContentPlaceHolder1_spnEmailBody').style.display = 'none';
});
}

我也试过比较文本的长度并做同样的事情:

var editor2 = $find("ctl00_ContentPlaceHolder1_ContractPendingEContractEditor");
var message2 = editor2.get_text();
if (message2.length > 1) 
document.getElementById('<%=spnContrPendngEmail.ClientID %>').style.display = 'none';

if (message2.length == 0 || message2.length == 1) 
document.getElementById('<%=spnContrPendngEmail.ClientID %>').style.display = 'block';

1 个答案:

答案 0 :(得分:0)

您可以附加到keydown eventOnClientSelectionChange事件,并检查内容区域是否为空。如果为空则显示错误消息。