[英]Using onClientClick and onClick together with form submission
所以我遇到了麻煩。 即使嘗試了許多不同的解決方案,我的問題仍然存在。
單擊按鈕將觸發Java腳本代碼,但不會觸發服務器端代碼。
<asp:Button ID="btnSubmit" runat="server" CssClass="ins_sub_btn_form_map" OnClientClick="javascript: stripeSubmit(); return true;" onClick="btnSubmit_Click"
UseSubmitBehavior="false" ValidationGroup="Submit" Text="Submit" />
這是我的JavaScript:
function stripeResponseHandler(status, response) {
if (response.error) {
// show the errors on the form
$(".payment-errors").html(response.error.message);
} else {
var form$ = $("#form1");
// token contains id, last4, and card type
var token = response['id'];
// insert the token into the form so it gets submitted to the server
form$.append("<input type='visible' id='stripeToken' name='stripeToken' value='" + token + "' />");
// and submit
form$.get(0).submit();
}
}
function stripeSubmit() {
Stripe.setPublishableKey($("input#txtStripePK").val());
var expDate = $("input#txtExpirationDate").val();
if (Stripe.card.validateCardNumber($("input#txtCreditCardNumber").val()) == false)
{
alert("Credit Card Number Error");
return;
}
if (Stripe.card.validateCVC($("input#txtCVVNumber").val()) == false) {
alert("CVN Number Error");
return;
}
if (Stripe.card.validateExpiry((expDate.slice(0, 2)) , ("20" + expDate.slice(2, 4))) == false) {
alert("Expiration Date Error");
return;
}
// createToken returns immediately - the supplied callback submits the form if there are no errors
Stripe.card.createToken({
number: $("input#txtCreditCardNumber").val(),
cvc: $("input#txtCVVNumber").val(),
exp_month: (expDate.slice(0, 2)),
exp_year: ("20" + expDate.slice(2, 4))
}, stripeResponseHandler);
//return true; // submit from callback
}
我已經嘗試過在javascript中沒有返回true的情況。 還嘗試了它,並且在onClientClick中也沒有返回true,也沒有“ javascript:”。 從字面上看,我能想到的一切。
任何幫助表示贊賞。 提前致謝。
如果我沒記錯的話,默認情況下,asp控件的UseSubmitBehavior屬性設置為true。 這意味着在該控件上執行的任何事件都將導致回發。 您已將UseSubmitBehavior設置為false,因此由於不發生回發,因此后面的代碼將永遠不會執行。 當一起使用OnClientClick()和OnClick()時,將首先執行客戶端代碼,然后再執行服務器端代碼。 希望這可以幫助
在Onclick內部的方法上使用close()。 ex onClick =“ SomeMethod()”
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.