zoukankan      html  css  js  c++  java
  • 修正EasyUI的BUG——Form中存在FileBox时的数据载入错误

    使用EasyUI载入服务端返回的数据时经常使用 $('#fm').form('load', row); 实现,既方便又简洁,可是。当Form中包括有FileBox时,代码就会报错,经过跟踪发现。由于EasyUI试图向隐藏的文件标签<input type="file">赋值。导致了错误。其源码例如以下:

    initValue: function(jq, _4d9) {
    	return jq.each(function() {
    		var _4da = $.data(this, "textbox");
    		_4da.options.value = "";
    		$(this).textbox("setText", _4d9);
    		_4da.textbox.find(".textbox-value").val(_4d9);
    		$(this).val(_4d9);
    	});
    },
    错误由 _4da.textbox.find(".textbox-value").val(_4d9); 这句导致的,故知须要把它改写一下。使其在处理文件标签时跳过该赋值过程就可以。改动后的代码例如以下:

    initValue: function(jq, _4d9) {
        return jq.each(function() {
            var _4da = $.data(this, "textbox");
            _4da.options.value = "";
            $(this).textbox("setText", _4d9);
            var obj = _4da.textbox.find(".textbox-value");
            if (obj.attr("type") != "file") {
                obj.val(_4d9);
            }				
            $(this).val(_4d9);
        });
    }
    当然,若你这个页面不过显示载入后的数据。那么没有什么问题,若你还能够再次提交,做Update操作。那么你得小心了,由于此时尽管页面上显示了文件的server路径,可是。终于实际提交到server的文件标签内并没有实际指向不论什么本地文件。故提交出去的文件是空的。



  • 相关阅读:
    bzoj3427:[POI2013]BAJ-Bytecomputer
    bzoj3417:[POI2013]MOR-Tales of seafaring
    bzoj1100:[POI2007]对称轴osi
    bzoj3295:[CQOI2011]动态逆序对
    bzoj2286:[SDOI2011]消耗战
    CF1110F Nearest Leaf
    CF1110E Magic Stones
    CF1110D Jongmah
    matlab基础向9:动画
    CF1102D-Balanced Ternary String-(贪心)
  • 原文地址:https://www.cnblogs.com/blfbuaa/p/7007698.html
Copyright © 2011-2022 走看看