fieldSerialize 序列化 加码 解码

来源:互联网 发布:传奇霸业移动网络 编辑:程序博客网 时间:2024/05/22 20:29
<table id="table1">
            
             <tr>
        <td>
            人员姓名
        </td>
        <td>
            <input type="text" id="PeopleName" runat="server" value="张三"/>
            <input type="text" id="txt_Adress"  value="安徽"/>
        </td>
          <td>
            性别
        </td>
        <td>
           <asp:DropDownList ID="ddl_Sex" runat="server" >
                                    <asp:ListItem Value="0">--请选择--</asp:ListItem>
                                    <asp:ListItem Value="1">男</asp:ListItem>
                                    <asp:ListItem Value="2">女</asp:ListItem>
                                </asp:DropDownList>
        </td>
    </tr>
        <tr>
            <td></td>
            <td><input type="submit" value="提交" onclick="savepeople()"></td>
        </tr>

        </table>


-------js文件--------------

 var handlerurl = "/Handle/PeopleHandle.ashx";
function savepeople() {
    var querystr = $("#table1 :input").fieldSerialize();
    $.ajax({
        type: "get",
        url: handlerurl,
        data: "action=people&&" + querystr,
        success: function (msg) {
            alert('aa');
            alert(msg);
        }
    });
}

--------------------------------

引用序列化js:<script src="../js/jquery.form.js"></script>

会发现txt_Adress 值是获取不到,要想获取到,有两种方法:

方法1:runat="server"

方法2:追加代码 name=“ txt_Adress ”


序列化后的字符串是:

发现中文是乱码


解码decodeURI:var querystr = decodeURI($("#table1 :input").fieldSerialize());

加密encodeURI:


注意:在序列化的时候。及时hidden 字段在form表单中,但是用上述序列化方法序列化的时候,实际上是序列化不到的,在后台request不到的,所以需要单独在前台传参到后台。




0 0