我有一些将数据发送到 PHP 函数的 jQuery 代码,并且将发送的一些数据是键 => 值对。我现在这样做的方式是我将一个变量设置为[]然后推送{'string1':'string2'},然后将这个变量发送进去。所以像这样:$(".test-button").click( function() { var inputData = []; $('.input-data').each(function( index ) { var name = $(this).attr("name"); var value = $(this).val(); inputData.push( { name : value } ); });var data = { testData: inputData };当我在 PHP 中获取数据时,如果我发送的是 3 个键值对,则 print_r 输出如下所示:Array( [0] => Array ( [name] => 1 ) [1] => Array ( [name] => 2 ) [2] => Array ( [name] => 3 ))我真正喜欢的是在 PHP 方面做一些类似的事情foreach($myInputData as $key => $value){ $output .= $key . " : " . $value . " ";}我对如何在 jQuery/JavaScript 中轻松做到这一点感到有些困惑
2 回答
精慕HU
TA贡献1845条经验 获得超8个赞
创建 javascript 对象时,name它被视为文字,它不使用您之前定义的变量。你可以这样做inputData.push( { [name] : value } );。这将每次创建一个新对象并将其添加到数组中,但您似乎正在寻找仅发送一个对象的解决方案:
var inputData = {};
$('.input-data').each(function(index) {
var name = $(this).attr("name");
var value = $(this).val();
inputData[name] = value;
});
慕雪6442864
TA贡献1812条经验 获得超5个赞
你可以试试下面的代码。
$(".test-button").click( function() {
var inputData = {};
$('.input-data').each(function( index ) {
var name = $(this).attr("name");
var value = $(this).val();
inputData[name] = value;
});
var data = inputData;
- 2 回答
- 0 关注
- 111 浏览
添加回答
举报
0/150
提交
取消