我正在尝试在填写某些表单字段时启用提交按钮.我发现了一段可以运行的
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();