首页 > 解决方案 > 如何使用 jquery 放置 json 值?

问题描述

我正在将选定的字段从 wordpress 发送到 API(第 3 方应用程序)。

这就是我的数据数组的样子:

var data_array = {
  "order": {
    "customer": {
      "name": "The User"
    }
  }
}

我想将“名称”键的值替换为包含 jquery 选择器的 javascript 变量。例如:

var name = j('.billing_company_name').html(result.meta_data[1].value);

我认为 data_array 的新代码将是:

var data_array = {
  "order": {
    "customer": {
      "name": name(variable name jquery selector)
    }
  }
}

你知道正确的语法,所以我可以用 jquery 选择器的值替换“name”键的值吗?

最终代码将如下面的代码所示:

j.ajax({
  type: 'POST',
  url: 'http://mywebsite/api/orderdetails',
  cache: false,
  data: {
    "data_array": data_array
  },
  beforeSend: function() {
  },
  success: function(result) {
  },
  error: function(xhr, status, error) {
    console.log(error);
  },
  complete: function() {
  }
});

标签: javascriptjqueryhtmlwordpress

解决方案


我需要将元素的值放在data_array.order.customer.name

在这种情况下,您可以使用val()来选择该属性。如果要在实例化对象时执行此操作,请使用以下命令:

var data_array = {
  "order": {
    "customer": {
      "name": name.val()
    }
  }
}

或者,如果您想在声明后执行此操作data_array(名称不好,因为它是一个对象而不是数组),那么您可以使用这一行:

data_array.order.customer.name = name.val();

推荐阅读