【发布时间】:2014-09-01 18:16:18
【问题描述】:
我正在使用 tinyMCE 编辑器。如果 jQuery 验证失败,我需要将焦点放在 tinyMCE 文本区域。我尝试了多种方法,但都未能设置焦点。 我努力了:
tinyMCE.activeEditor.focus; 我也试过这个: tinyMCE.activeEditor.execCommand('mceFocus', false, 'textarea_id'); 并且 $("#lCmsContent").tinyMCE().focus();实际上我正在使用 jQuery 验证,所以如果在文本编辑器的情况下验证失败,我需要设置焦点。为此,我的代码如下:
$('.form_validation_cmspage').validate({ onkeyup:假, 错误类:'错误', 有效类:'有效', 亮点:功能(元素){ $(element).closest('div').addClass("f_error"); }, 取消突出显示:函数(元素){ $(element).closest('div').removeClass("f_error"); }, 错误放置:函数(错误,元素){ $(element).closest('div').append(error); }, 规则:{ 'vCmsTitle':{必需:真}, 'lCmsContent':{必需:真}, “状态”:{必需:真} },消息:{ 'vTitle' : { required: "此字段为必填项!"}, 'lCmsContent' : { required : "需要说明!"}, 'status' : { required: 'Status field is requerid!' } },忽略:':hidden:not(.chzn_a)', 无效处理程序:函数(表单,验证器){ var 错误 = 验证器.numberOfInvalids(); 如果(错误){ if(validator.errorList[0].message == '需要描述!') { tinyMCE.activeEditor.execCommand('mceFocus', false, 'lCmsContent'); } } } })对于文本编辑器:
<textarea id="lCmsContent" name="lCmsContent"></textarea>
提前致谢!!
【问题讨论】:
-
为什么你把
id参数留空tinymce.execCommand('mceFocus',false,'id_of_textarea');? -
@MohitArora 是的,我忘了在这里提及,我在上面添加了。但这不起作用
-
有没有其他出路
-
yeaaa :) 谢谢@MohitArora,tinyMCE.get('Description').getBody().focus();这个对我有用