2009-04-22 5 views
1

Полностью новый для JQuery, поэтому я изучаю каждый день.Функции многократного использования JQuery

Одна вещь, которую я заметил, как это легко, вы можете просто написать

$('div#test).remove(); 

Но я ищу пример о том, как повторно использовать код, например .:

function RemoveTableRow(row, id) 
{ 
    $(row).remove(); 
    // id should be used for ajax call 
} 

И затем добавить «OnClick» на мой якорь теге

onclick="RemoveTableRow('user-row-1', 32);" 

Но почему-то не работает, даже если добавить его на document.ready функция. Может кто-то отрезал это для меня, лучший способ для этого?

Заранее спасибо. Этот форум - убийца!

Update

Я обновил код с помощью я получил здесь. Это мой текущий код, и я хотел бы знать, если это лучший способ сделать это.

function RemoveTableRow(row, id) { 
      $.ajax({ 
      type: "POST", 
      url: "Default.aspx/DeleteEmployee", 
      data: "{'ID':'" + id + "'}", 
      beforeSend: function() { 
        $("#" + row).animate({'backgroundColor':'#fb6c6c'},300); 
      }, 
      success: function() { 
       $("#" + row).slideUp(300,function() { 
        $("#" + row).remove(); 
       }); 
      } 
     }); 
    } 
+0

У вас возникли ошибки JavaScript? – harto

+0

Код в вашем редактировании выглядит отлично и выглядит как лучший способ сделать это. Я бы не изменил его. –

ответ

1

является user-row-1 идентификатором строки таблицы? Если да, то чем вам не хватает # в вашем селекторе

function RemoveTableRow(row, id) { 
    $('#'+row).remove(); 
    // id should be used for ajax call 
} 

или без изменения функции, вызовите его с полным селектором

onclick="RemoveTableRow('#user-row-1', 32);" 
+0

Конечно! Это работает! Это лучший способ сделать это? Или вы рекомендуете что-то еще? –

+0

Это не плохо, но вы можете использовать больше возможностей jQuery. Если у вас есть кнопка удаления в каждой строке (просто прочитайте свой комментарий к ответу kgiannakakis), например (

+0

Это замечательно. Но мне нужно передать некоторые параметры нажатием кнопки? –

0

Где вы хотите связать OnClick с? Предполагая, что это элемент DOM с id myid, тогда это будет делать:

("#myid").click(function() {RemoveTableRow('user-row-1', 32);}); 
+0

У меня есть несколько строк таблицы с кнопкой delete в конце каждого, где вывод - из динамического кода, поэтому мне нужно как-то избежать Идентификатор жестко запрограммированного кода. –

Смежные вопросы