我正在尝试在填写某些表单字段时启用提交按钮.我发现了一段可以运行的
javascript代码,但我遇到了textarea fiel的问题,这是由tinymce转换的…如何捕获它?
我的HTML:
<form id="form_id1"> <fieldset> <legend>Personal</legend> Name: <input type="text" size="30" /><br /> Email: <input type="text" size="30" /><br /> Date of birth: <input type="text" size="10" /><br /> Address : <textarea size="30"></textarea><br /> </fieldset> <input type="submit" value="Submit" /> </form>
我的javascript:
$(document).ready(function()
{
$('#form_id1 input:submit').attr("disabled",true);
var textCounter = false;
$('#form_id1 input:text,#form_id1 textarea').keyup(check_submit);
function check_submit() {
$('#form_id1 input:text,#form_id1 textarea').each(function()
{
if ($(this).val().length == 0) {
textCounter = true;
return false;
}
else {
textCounter = false;
}
});
$('#form_id1 input:submit').attr("disabled",textCounter);
}
});
我的tinymce init:
tinymce.init({
selector: "textarea",language: 'fr_FR',image_advtab: true,menubar:false,forced_root_block: false,plugins: ["link","code","media","image","textcolor","emoticons"],toolbar: "bold italic forecolor backcolor alignleft aligncenter alignright alignjustify link unlink image media emoticons",});
谢谢
解决方法
在tinymce init中添加:
setup: function(ed) {
ed.on('keyup',function(e) {
console.log('Editor contents was modified. Contents: ' + ed.getContent());
check_submit();
});
}
请记住,您可能需要找到您的编辑器实例而不是textarea才能获得实际值.如果你让textarea有id =“textarea-tiny-mce”
tinymce.get('textarea-tiny-mce').getContent();