EasyUI Forum

General Category => EasyUI for jQuery => Topic started by: fen9ye on June 17, 2014, 02:19:14 AM



Title: numberbox remote Question
Post by: fen9ye on June 17, 2014, 02:19:14 AM
My code is like this:
<input type="text" class="easyui-numberbox" name="candNum"
            data-options="
               min:0,
               max:99999,
               required:true,
               validType:{
                  length:[1,5],
                  remote:['info_validateCandNum.action','candNum']
               },
               delay:400,
               formatter:function(value){
                  var str = value.toString();
                  while(str.length<5){
                     str = '0'+str;
                  }
                  return str;
               }
            ">
the server side can get the param,and will return 'true' at last
 PrintWriter out = response.getWriter();
 out.println("true");
however,the numberbox is still in the invalid state.Can anyone solve my problem?


Title: Re: numberbox remote Question
Post by: fen9ye on June 17, 2014, 02:21:39 AM
When I turn out.println("true") to out.print("true"),it works,I don't know why.


Title: Re: numberbox remote Question
Post by: stworthy on June 17, 2014, 05:58:56 PM
The 'remote' validation is defined as:
Code:
$.extend($.fn.validatebox.defaults.rules,{
remote: {
validator: function(value, param){
var data = {};
data[param[1]] = value;
var response = $.ajax({
url:param[0],
dataType:'json',
data:data,
async:false,
cache:false,
type:'post'
}).responseText;
return response == 'true';
},
message: 'Please fix this field.'
}
})
It requires the server to return the 'true' string with no "\n" character.


Title: Re: numberbox remote Question
Post by: Coder on October 02, 2020, 05:09:22 AM
can be original fixed to:

Code:
}).responseText;
return response.replace(/\s/g, '') == 'true';

?