xheditor是一个很实用的编辑器,不过有时却会出现无法获取value值得问题,xheditor的官方文档中这样解释:xhEditor默认会在textarea所在的form对象中绑定onsubmit事件,当用户点击submit按钮时,xhEditor就会将最新结果同步回textarea,随后随表单中的其它表单项一同提交到服务端脚本。因此,如果不需要用Javascript额外处理,普通的表单式提交是没任何问题的。换言之xhEditor对form提交的时间和顺序是有要求的。
easyui是一个轻量级的jqueryUI框架,提供了丰富的UI组件,可以使用easyui的form组件进行表单的提交,接合上文所述,如果处理不当的话,easyui的form表单提交和xheditor配合使用就会出现value为空或旧值。easyui的form有一个submit的方法:格式如下:
$('#ff').form('submit', {
url:...,
onSubmit: function(){
// do some check
// return false to prevent submit;
},
success:function(data){
alert(data)
}
});
这个方法用来执行提交操作,如果xheditor和form表单以这种方式配合的话就可能出现 value为空或旧值的问题,因为在提交前,xheditor没能将value值绑定回textarea,提交时就出现了空值或旧值,所以建议配合使用时使用以下方式:
$('#ff').form({
url:...,
onSubmit: function(){
// do some check
// return false to prevent submit;
},
success:function(data){
alert(data)
}
});
// submit the form
$('#ff').submit();
这样就可以保证在提交前, xheditor将value值绑定回textarea,就不会在出现上面所说的问题了。