我有一些将数据发送到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中轻松地做到这一点
发布于 2019-08-05 04:51:27
在创建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;
});发布于 2019-08-05 05:20:24
你能试试下面的代码吗?
$(".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;https://stackoverflow.com/questions/57352297
复制相似问题