Rails вложенные атрибуты JavaScript добавить еще - PullRequest
1 голос
/ 23 декабря 2009

У меня была модель с некоторыми вложенными атрибутами, и мне нужно было добавлять новые элементы через Javascript. Вот что я придумал:

$('.add_task').click(function() {
  var last_item = $('#tasks li:last');
  last_item.after('<li>'+last_item.html().replace(/\d+(?=\_)|\d+(?=\])/g, function(match) {return parseInt(match)+1;})+'</li>');
});

Он отлично справляется со своей работой, но ему было интересно, есть ли у кого-нибудь лучшее предложение.

ура!

Ответы [ 2 ]

4 голосов
/ 23 декабря 2009

Проверьте Райан Бейтс complex-form-examples репо на GitHub - у него есть несколько опций в разных ветках и даже ненавязчивая версия с использованием JQuery (мой любимый).

0 голосов
/ 23 декабря 2009

Я просто собрал более общую функцию:

function add_new_item(element) {
  var e = $(element);
  var tag = e.get(0).tagName.toLowerCase();

  e.after(
    $('<'+tag+'>'+'</'+tag+'>').append(e.html().replace(/\d+(?=\_)|\d+(?=\])/g, function(match) {return parseInt(match)+1;}))
  );
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...