ページに送信ボタンがあります。ajaxコールでJavaScriptのサイドボタンクリックイベントをjavascriptから呼び出す
<asp:Button ID="btnSubmit" runat="server" Text="Save Test" OnClick="btnSubmit_Click"
OnClientClick="return ValidateSaveTest(this);" />
JavaScriptでは、すべてのフィールドを検証するValidateSaveTest関数が呼び出されます。
function ValidateSaveTest(Sender) {
//do some validation, if fails return false from here. else move forward
var parameters = {};
parameters["parametersName"] = $("#" + hidTestId).val();
var succeededAjaxFn = function(result) {
if (result== true) {
var isNewVersion = confirm("Confirmation message");
if(isNewVersion)
{
//Raise server side button click event. Dont call click side event anymore.
$("#" + "<%=btnSubmit.ClientID %>").click();
}
return false;
}
}
var failedAjaxFn = function(result) { return false; }
//jquery ajax call
CallWebMethod("../Service.asmx", "IsTestUsed", parameters, succeededAjaxFn, failedAjaxFn);
//async call, always return false hence no postback from here.
//Need waiting unless ajax response is obtained.
return false;
}
ajaxレスポンスを受信すると、JavaScriptのサーバーサイドボタンクリックイベントを発生させる必要があります。
ありがとうございました。あなたの最初の答えでは、私はmsdnに言及したとき、私はそれを理解していない。しかし、あなたの説明の後に。解決策だけでなく、何が起こっているのか理解して... –
どのようにOnclickイベントが発生しましたか?このコードでOnclickイベントが発生したとおっしゃいましたか?私はそれを理解することができます。 –
@AliForoughiサーバー側のイベントがどのようにトリガーされるのか説明するために私の答えを編集しましたが、それは役に立ちますか? –