使用yui上传文件,动态刷新页面和一般情况有些不同。这里主要有三点要注意:
第一是 $C.setForm(form, true); 这里要设置成true,表示要upload文件。
第二点是在设置上传成功后的处理方法时,要以“upload”为成功的状态:
$C.asyncRequest("POST", _url, { upload:function(o){...} });第三点是在firefox下通过json返回的responseText格式上有问题,firefox会添加<pre>...</pre>标签,导致responseText不能正常被解析。解决的办法如下:
var res; var json = o.responseText; if(json.indexOf('<pre>') != -1) { // firefox has this bug res = eval("(" + json.substring(5, json.length-6)+ ")"); } else { res = eval("(" + json + ")"); }
