Я пытаюсь использовать RadSpell Telerik для проверки орфографии некоторого текста, когда пользователь отправляет его.
Способ, которым это должно работать, - остановить обратную передачу, вызвать проверку орфографии через javascript, а затем в событии проверки орфографии вручную запустить реальную обратную передачу. Проблема в том, что на последнем шаге событие Clicked не запускается для кнопки, а обработчик событий на стороне сервера никогда не вызывается.
Вот соответствующий код .aspx:
<script type="text/javascript" language="javascript">
var spellCheckFinished = false;
var btnClicked;
function doSpellCheckStuff(btnTrigger)
{
btnClicked = btnTrigger;
var spell = GetRadSpell('<%= rsMessage.ClientID %>');
// spell.add_clientCheckFinished(checkFinished);
spell.startSpellCheck();
return false;
}
function checkFinished(sender, args)
{
args.SuppressCompleteMessage = true;
setTimeout('MySubmit();', 100);
}
function MySubmit()
{
WebForm_DoPostBackWithOptions(
new WebForm_PostBackOptions(btnClicked.id, '', true, '', '', false, true)
);
}
</script>
<tr>
<td>
<asp:Button ID="btnSubmit" OnClientClick="return doSpellCheckStuff(this);" Text="Submit"
OnClick="btnSubmit_Click" runat="server" />
</td>
<telerik:RadSpell ID="rsMessage" ControlToCheck="txtMessage" ButtonType="None"
UseClassicDialogs="true" FragmentIgnoreOptions="All"
OnClientCheckFinished="checkFinished" runat="server" />
</tr>
Есть идеи, почему не вызывается btnSubmit_Click и как я могу это исправить?