各行のリンクをクリックするといくつかの関数がトリガーされるテーブルがあります。
コードの関連部分は次のとおりです。
$('.my_table').inplacerowedit({
url: myurl,
});
inplacerowedit.jsファイルには、次のものがあります。
(function($) {
$.fn.inplacerowedit = function(options) {
var ops = $.extend({}, $.fn.inplacerowedit.defaults, options);
$(this).find(ops.editbuttonselector).on('click', function(e) {
... }
ops.editbuttonselector = 'a.edit'
私のテーブルには各行に編集リンクがあり、通常は正常に機能しています。私の問題は、新しく作成された行にあります。
行を作成してテーブルに追加する方法は次のとおりです。
new_row = null
getNewRow = function() {
if (new_row == null){
new_row = $("<tr>");
columns = {'name':'','type':'','value':'','edit':'','delete':''}
for (var column in columns)
new_row.append( $("<td>").addClass(column).text(columns[column]));
links = ['edit','delete']
for (var i=0;i<links.length;i++){
link = links[i]
a = $("<a href='"+link+"' class='"+link+"'>").text(link);
new_row.find("."+link).append(a)
}
}
return new_row
};
$("#addRowAndEdit").click(function(e){
e.preventDefault();
var row = getNewRow();
$(".my_table").append(row);
new_record = $('.my_table tbody>tr:last');
new_record.find('a.edit').click(); //this is the line that is not working.
....
}
アップデート:
私がそうするnew_record.find('a.edit').on('click', alert('ok'));
と、アラート機能は機能しますが、もう一方は呼び出されません。
何か案は?ありがとう