Rails嵌套属性javascript添加另一个

时间:2009-12-23 19:15:20

标签: javascript ruby-on-rails

我有一个带有一些嵌套属性的模型,需要通过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 个答案:

答案 0 :(得分:4)

在GitHub上查看Ryan Bates的complex-form-examples回购 - 他在不同的分支中有一些选项,甚至是使用JQuery(我最喜欢的)的一个不显眼的版本。

答案 1 :(得分:0)

我只是将一个更通用的功能放在一起:

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;}))
  );
}