js如何获取表单中数组的值?

ajax把表单里的值发送给php处理,但是现在表单有两个数组:
<input type="text" name="message[1]" />
<input type="text" name="message[2]" />
现在怎么通过ajax post提交到到php后台处理?为什么我按下面的写提交过去错误??

<script type="text/javascript">
var data = {};
var message = $('input[name=message ]').val();
data.message = message ;
$.ajax({
type:'post',
url:ApiUrl+'/index.php?act=member_buy&op=buy_step2',
data:data,
dataType:'json',
success:function(result){
//返回处理
}
});
</script>

value 属性为 input 元素设定值,表单的值一般是元素的value属性:

<input value="value">

假设有以下form,拥有一个input字段(带空值预定义)以及一个提交按钮 :

提取表单值代码:

提交之后获取的结果是:

空值:

不为空:

扩展资料:

value 属性为 input 元素设定值。对于不同的输入类型,value 属性的用法也不同:

(1)type="button", "reset", "submit" - 定义按钮上的显示的文本;

(2)type="text", "password", "hidden" - 定义输入字段的初始值;

(3)type="checkbox", "radio", "image" - 定义与输入相关联的值;

参考资料:百度百科--value

温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2017-12-16
大体看了下,发现俩错误:
1,jQ选择器不对,应该是:$('input[name^=message]'),表示name以“message”开头的<input>,你的那种写法表示name恰为"message"的<input>,你好像还在message后加了一个空格符。
2,jQ的val()返回内部数组里首个元素的值,这里就是第一个<input>的值(目前两个<input>的值都为空串),如果你需要取得全部值,用each()把所有值放到一个数组里。追问

大神,写个简单例子格式给我看看吧,我已经想了几天了,非常感谢!

追答

这两个数组有没有关系?没有关系的话,给他们起不同的名字,不要都叫message,那就成一个数组了。

然后分别进行处理:
var data = {};
var m1 = [], m2 = [];
$("input[name^=m1]").each(function(a_Idx, a_Elmt) { m1.push(a_Elmt.value); });
$("input[name^=m2]").each(function(a_Idx, a_Elmt) { m2.push(a_Elmt.value); });
data.m1 = m1;
data.m2 = m2;
……

追问

有关系的,他们都是购物车里的留言表单,更准确应该是message[k],k代表的是店铺的id!

追答

那就:

var data = {};
var message = [];
$('input[name="message[k]"]').each(function(a_Idx, a_Elmt) { message.push(a_Elmt.value); });
data.message = message;
// 下面继续

本回答被提问者采纳

js如何获取表单中数组的值?
value 属性为 input 元素设定值,表单的值一般是元素的value属性: 假设有以下form,拥有一个input字段(带空值预定义)以及一个提交按钮 :提取表单值代码:提交之后获取的结果是:空值:不为空:

js表单提交后,如何获取表单中的数据并显示出来
表单是用form来填写,在提交前可以获取表单里面的数据。我这里用jquery实现。 inputText checkBox1 checkBox2 <!--其他你想填写的表单选项-->

JS如何获取表单中复选框的值
定义变量。选择所有对象,返回数组。取到对象数组后,用for循环检测它是不是被选中。如果选中,将value添加到变量中。

如何在jsp上取值
jsp页面的取值一般是通过form表单后javaBean的,先set,后get,不清楚你要做成什么效果,所以也不好说啊

JS部分怎么写才能把form表单里的数据输出出来
JS获取form表单里的数据并输出的方法:document.getElementById("ddd").innerHTML = document.getElementById("xxx").value + document.getElementById("yyy").value;将表单数据获取好后进行拼接赋给某个dom节点显示出来。js获取表单数据命令是:document.getElementById("xxx").value;输出表单数据到某...

html JS 获取tr\/td 表单元素下面的各个值
这是获得每个tr 中td 的内容 ('#myTableProduct tr').each(function(index,ele){ (this).find('td').each(function(index,ele){ alert($(ele).html());})}) 不用谢我 ---君少

js 如何获取表单某个值
最后会生成正常的H5 标签,只要你的属性里配置了就会在生成的标签里附带又id值,然后用js根据id值取值即可:var val = document.getElementById(id).value;val就是你要取的标签的value。

js获取form表单提交的数据?
用下面的函数可以获取:function getUrlParam(name) { var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i");var r = window.location.search.substr(1).match(reg);if (r != null) return decodeURI(r[2]);return null;} 如获取user,执行getUrlParam("user")就...

th:value取值js里如何得到值
JavaScript获取value值,主要有以下三种:1.用document.getElementById(“id名”).value来获取2.通过form表单中的id名或者name名来获取。3.通过id名(不用写getElementById,也不用放在表单中)直接获取value值(例3)。但是直接通过value值获取需要注意以下几点: ①变量名不能和id名一样,否则无效; ...

表单button提交表单 js 怎样获取表单数据
方法submit()这个是js中的函数很简单 <javascript>function addressadd(){ document.formAddress.submit(); \/\/formAddress是上面表单的ID}<\/javascript>formAddress是你的表单名或ID这样就可以实现提交表单了 function addressadd(){ document.formAddress.submit(); \/\/formAddress是上面表单的ID}...

相似回答