ajax - 如何在 jquery 中使 ajax 数据键动态化?

标签 ajax jquery

我正在尝试使内联编辑成为动态的,因此它只依赖于我的标记中的一些数据属性,所以现在的代码如下:

$(".inline-edit").editable(
  function(value, settings) {
    var editableField = $(this);

    $.ajax({
          type: 'PUT',
          url: editableField.attr('data-href'),
          dataType: 'html',
          success: function(html) {
            editableField.parents('.replaceable').replaceWith(html);
          },
          data: { 'regression_test_environment[name]' : value }
        });
        return(value);
  },
  {
    event: 'click',
    width: '80%',
    height: '20',
    submit : 'OK'
  }
)

我希望regression_test_environment[name]中的名称为editableField.attr('data-column-name'),但它总是编译失败,因为它一直将 key 作为字符串。我尝试在可编辑字段变量赋值之后创建一个变量,并将字符串构建为不同的变量,但它不想将键作为函数进行计算。

有办法做到这一点吗?或者我是否坚持为每个可编辑字段创建单独的 .editable 调用?

最佳答案

你可以尝试这样:

var name = editableField.data('column-name');
var values = { };
values['regression_test_environment[' + name + ']'] = value;

$.ajax({
    type: 'PUT',
    url: editableField.data('href'),
    dataType: 'html',
    data: values,
    success: function(html) {
        editableField.parents('.replaceable').replaceWith(html);
    }
});

关于ajax - 如何在 jquery 中使 ajax 数据键动态化?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5270551/

相关文章:

jquery - 使用 jQuery 解析 HTML 字符串

jQuery Autocomplete 源属性作为 function(){} 非常慢

javascript - Backbone this.el 与 this.$el

javascript - 打破 JavaScript 作用域的方法

php - Wordpress 资源被解释为样式表但使用 mime 类型 text/html 传输

jquery - 如何获取 bootstrap-fileinput 中的响应数据?

javascript - Wicket AjaxFormUpdatingBehavior 和 Javascript

javascript - AngularJS http 调用(完整语法)

javascript - ReactJS Props 和冒泡

javascript - Rails 使用 Ajax 和acts_as_votable 进行赞成/反对