序列化 <td> 中的值是可能的吗?使用 js
serialize the value in <td> is possible?using js
var data = $("#myform").serialize();
console.log(data);
<form method="post" id="myform" action="">
<table>
<tr>
<td>
<input type=text name="fname"/>
</td>
</tr>
<tr>
<td>
<input type=text name="lname"/>
</td>
</tr>
<tr>
<td>
<input type=text name="age"/>
</td>
</tr>
</table>
</form>
我能够使用输入文本和上面的代码序列化此表单我的问题是,是否可以仅在是的情况下使用 td 序列化任何想法?我使用的表单是这样的
<form method="post" id="myform" action="">
<table>
<tr>
<td name="fname" id="fname">
</td>
</tr>
<tr>
<td name="lname" id="lname">
</td>
</tr>
<tr>
<td name="age" id="age">
</td>
</tr>
</table>
</form>
没有。您不能对 table td 使用序列化。
它仅适用于输入控件。如果你想 post td 数据然后创建你自己的 java 脚本对象,收集 td 文本并 post 它到服务器。
你需要自己收集数据然后参数化:
var data = $.param($('td').map(function() {
return {
name: $(this).attr('name'),
value: $(this).text().trim()
};
}));
查看下面的演示。
var data = $.param($('td').map(function() {
return {
name: $(this).attr('name'),
value: $(this).text().trim()
};
}));
alert(data)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table>
<tr>
<td name="fname" id="fname">First Name</td>
</tr>
<tr>
<td name="lname" id="lname">Last Name</td>
</tr>
<tr>
<td name="age" id="age">23</td>
</tr>
</table>
var data = $("#myform").serialize();
console.log(data);
<form method="post" id="myform" action="">
<table>
<tr>
<td>
<input type=text name="fname"/>
</td>
</tr>
<tr>
<td>
<input type=text name="lname"/>
</td>
</tr>
<tr>
<td>
<input type=text name="age"/>
</td>
</tr>
</table>
</form>
我能够使用输入文本和上面的代码序列化此表单我的问题是,是否可以仅在是的情况下使用 td 序列化任何想法?我使用的表单是这样的
<form method="post" id="myform" action="">
<table>
<tr>
<td name="fname" id="fname">
</td>
</tr>
<tr>
<td name="lname" id="lname">
</td>
</tr>
<tr>
<td name="age" id="age">
</td>
</tr>
</table>
</form>
没有。您不能对 table td 使用序列化。 它仅适用于输入控件。如果你想 post td 数据然后创建你自己的 java 脚本对象,收集 td 文本并 post 它到服务器。
你需要自己收集数据然后参数化:
var data = $.param($('td').map(function() {
return {
name: $(this).attr('name'),
value: $(this).text().trim()
};
}));
查看下面的演示。
var data = $.param($('td').map(function() {
return {
name: $(this).attr('name'),
value: $(this).text().trim()
};
}));
alert(data)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table>
<tr>
<td name="fname" id="fname">First Name</td>
</tr>
<tr>
<td name="lname" id="lname">Last Name</td>
</tr>
<tr>
<td name="age" id="age">23</td>
</tr>
</table>