hi,欢迎访问本站!
当前位置: 首页Web前端正文

JQ修改或删除serialize()方法中指定的name值

墨初 Web前端 665阅读

在web前端使用jq进行form表示提交时,可以使用jquery中的serialize()方法来一次性提交表单的值,如果serialize()中的数据需要额的修改或删除,可以参考下面小编写的jq处理函数进行处理。

jQuery删除serialize()方法中指定的name值

示例函数:

/**
 * 
 * @param formdata serialize()获取的数据
 * @param name 要排除掉的name属性
 * @return reslut 类似 serialize() 获取数据格式的数据
 * @host http://www.73so.com
 */
function undatakey(formdata,name)
{
    result = '';
    for(var i in formdata.split("&")){
        var row = formdata.split("&")[i];
        var key = row.split("=")[0];
        var value = row.split("=")[1];
        if(key != name){
            result = result + row + "&";
        }
    }
    return reslut;
}

函数调用方法:

formdata = undatakey($('#form').serialize(),'name');

JQ修改serialize()方法中的某个值

上面的方法是jq删除serialize()方法中的某个值,我们也或以参考上面的示例,来写一个修改serialize()方法中某个值的函数。

示例函数:

/**
 * 
 * @param formdata serialize()获取的数据
 * @param name 要修改name属性
 * @param newvalue 新的属性值
 * @return reslut 类似 serialize() 获取数据格式的数据
 * @host http://www.73so.com
 */
function editdatakey(formdata,name,newvalue)
{
    result = '';
    for(var i in formdata.split("&")){
        var row = formdata.split("&")[i];
        var key = row.split("=")[0];
        var value = row.split("=")[1];
        if(key == name){
            result += key + '=' + newvalue + '&';
        }else{
            result = result + row + "&";
        }
    }
    
    return result;
}

函数调用:

formdata = undatakey($('#form').serialize(),'name','mochu');

以上就是修改或删除serialize()方法中指定参数值的方法,大家可以参考一下。

声明:无特别说明,转载请标明本文来源!