私のJSPにはリンクとボタンがあり、どちらもAjaxアクションを呼び出して結果で使用したいと考えています。
リンクとボタンの両方のイベントを作成し、Ajax を呼び出します。呼び出し元のメソッドに結果を返す必要があります。
//event for button
$(document).on('click', ".addComponent", function(){
var htmlContent=$(this).html();
$('.addComponent').html('Loading...').fadeIn();
var urlAction=$(this).attr("id");
var dataFields=$(this).data('val');
var data=callActionUsingAjax(urlAction, dataFields); //data not returning from ajax
var ajaxActionResult=ajaxResult(data);
$('.addComponent').html(htmlContent).fadeIn();
$('#popUpForm').html(ajaxActionResult);
$('#popUpForm').dialog("open");
return false;
});
//event for link
$(document).on('click', "#dimComponentList >TBODY > TR > TD > a", function(){
$("body").css("cursor", "progress");
var urlAction=$(this).attr("href");
var dataFields="";
var data=callActionUsingAjax(urlAction, dataFields);
var ajaxActionResult=ajaxResult(data); //ajax not returning data
$("body").css("cursor", "auto");
$('#applicationList').html(ajaxActionResult);
return false;
});
これがAjaxを呼び出す私の方法です
function callActionUsingAjax(urlAction,datafields)
{
$.ajax({
type: "post",
url: urlAction,
data: datafields,
success: function (data) {
return data;
}
});
}
このリンクを試しましたが、そのようなカスタム メソッドでコールバックを使用する方法がわかりません。他にも、これを Ajax と呼ぶ必要があるイベントがいくつかあります。そのため、カスタム メソッド内で Ajax を使用しました。
誰でも私に解決策を教えてもらえますか?