jQuery克隆并重命名

时间:2012-01-10 10:06:35

标签: jquery clone

我正在尝试创建“动态行”,通过单击按钮可以轻松添加额外的数据行。我这样做是通过在我的代码中隐藏“skeleform-form”,然后在请求时克隆它。

我的问题在于创建了一行并提交了它,POST将是空的!

任何人都可以暗示我做错了吗?

祝你好运

[carrier_rules] => Array
(
    [jq$0] => Array
    (
        [country] => 1
        [delivery_time] => 0
        [price] => 0
        [tier_target] => 0
        [tier_price] => 0
        [tier_target_available] => 0
    )

)


function create_row() {
  var id = $.generateId();

  $('.frame').clone().removeClass('frame').prependTo('#shipping-rules tbody').show();
  $('select[name$="carrier_rules[frame][country]"]').attr('name', 'carrier_rules['+id+'][country]');
  $('input[name$="carrier_rules[frame][delivery_time]"]').attr('name', 'carrier_rules['+id+'][delivery_time]');
  $('input[name$="carrier_rules[frame][price]"]').attr('name', 'carrier_rules['+id+'][price]');
  $('input[name$="carrier_rules[frame][tier_target]"]').attr('name', 'carrier_rules['+id+'][tier_target]');
  $('input[name$="carrier_rules[frame][tier_price]"]').attr('name', 'carrier_rules['+id+'][tier_price]');
  $('input[name$="carrier_rules[frame][tier_target_available]"]').attr('name', 'carrier_rules['+id+'][tier_target_available]');
}

$.generateId = function() {
  return arguments.callee.prefix + arguments.callee.count++;
};
$.generateId.prefix = 'jq$';
$.generateId.count = 0;
$.fn.generateId = function() {
  return this.each(function() {
    this.id = $.generateId();
  });
};

0 个答案:

没有答案