これをすべてのボタンで機能させることはできず、その理由を説明するものが見つかりません。私が見逃しているのは小さなことだと思います
$(document).ready(function() {
// delete the selected row from the database
$(document).on('click', '#business-area-delete-button', { model: "BusinessArea" }, deleteRow);
$(document).on('click', '#business-type-delete-button', { model: "BusinessType" }, deleteRow);
$(document).on('click', '#client-delete-button', { model: "Client" }, deleteRow);
$(document).on('click', '#client-type-delete-button', { model: "ClientType" }, deleteRow);
$(document).on('click', '#communication-channel-type', { model: "CommunicationChannelType" }, deleteRow);
$(document).on('click', '#parameter-type-delete-button', { model: "ParameterType" }, deleteRow);
$(document).on('click', '#validation-method-delete-button', { model: "ValidationMethod" }, deleteRow);
}
行事
function deleteRow(event){
$.ajax(
{
type:'POST',
data: { id: $(".delete-row").attr("id") },
url:"/mysite/admin/delete" + event.data.model,
success:function(data,textStatus){
$('#main-content').html(data);
},
error:function(XMLHttpRequest,textStatus,errorThrown){
jQuery('#alerts').html(XMLHttpRequest.responseText);
},
complete:function(XMLHttpRequest,textStatus){
placeAlerts()
}
}
);
return false
};
これは、id validation-method-delete-button を持つボタンに対してのみ機能します。ボタンは後でajax経由でロードされるテンプレートに含まれているため、ボタン自体ではなくドキュメントを使用します。
テーブル内の行を選択する同様の関数でこれが機能していますが、そのシナリオでデータを渡そうとしていません。