Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript $.ajax在ios设备(iphone)上不起作用_Javascript_Jquery_Ios_Iphone_Ajax - Fatal编程技术网

Javascript $.ajax在ios设备(iphone)上不起作用

Javascript $.ajax在ios设备(iphone)上不起作用,javascript,jquery,ios,iphone,ajax,Javascript,Jquery,Ios,Iphone,Ajax,单击按钮时,我正在调用一个函数,该函数进行$.ajax调用,以从第三方url获取相关数据 它在除ios以外的所有设备和浏览器中都能正常工作 这是我的按钮: <input type="submit" id="continue-btn" class="button primary-btn button-type-1" value="Buy Policy" onclick="validateCardDetails();" /> 定义“不工作”您在控制台中是否遇到任何错误?否。它不会出现

单击按钮时,我正在调用一个函数,该函数进行$.ajax调用,以从第三方url获取相关数据

它在除ios以外的所有设备和浏览器中都能正常工作

这是我的按钮:

<input type="submit"  id="continue-btn" class="button primary-btn button-type-1" value="Buy Policy" onclick="validateCardDetails();" />

定义“不工作”您在
控制台中是否遇到任何错误?否。它不会出现任何错误,即使它也不会成功。。所以基本上既没有成功也没有错误。不要单击
onClick
属性,而是使用jQuery将其绑定:
$('#continue btn')。单击(function(){….})2。添加
警报(“测试”),以确保单击事件被触发。3.调试:在
$.ajax
函数之前添加
alerts()
,在
success:function(res){
之后和
error:function(){
之后添加
alerts()。。我注意到的另一件事是一个提交按钮,因此如果它有某种行为(提交表单),则需要添加
preventDefault()
返回false/true
以防止其自然行为。
function validateCardDetails() {


                var todaysPaymentOption, paymentOption, nameOnCard, ccExpYear, ccExpMonth, cardNumber, cardCVVCd, cardType, accHolderName, accType, accNumber, routingNumber, paymentAmount, repetitiveDrawDate, repPaymentOption, billingFrequency, futurePaymentAmount, rep_nameOnCard, rep_ccExpYear, rep_ccExpMonth, rep_cardNumber, rep_cardType, rep_accHolderName, rep_accNumber, rep_routingNumber, rep_accType, enableAutopay, policyNumber;
                var applicationId = $("#ppApplicationId").val();
                todaysPaymentOption = $("#paymentMethod input[type=radio]:checked").val();
                paymentOption = $("#selectedPaymentOption").val();
                nameOnCard = $("#tdyFname").val();
                ccExpYear = $("#ttdyexpyYear").val();
                ccExpMonth = $("#ttdyexpyMonth").val();
                cardNumber = $("#tdyCardnum").val();
                cardCVVCd = $("#tdyCardvv").val();
                var cardTypeTemp = $("#cardType input[type=radio]:checked").val();
                cardType = $("#cardType").val();
                accHolderName = $("#tdyAccountHolderName").val();
                accType = $("#accountType option[selected]").val() ? $("#accountType option[selected]").val() : '02';
                accNumber = $("#tdyBankAccount").val();
                routingNumber = $("#tdyRoutingNumber").val();
                paymentAmount = $("#todaysPayment").val();

                // $("#refNo").text(sfs);
                repetitiveDrawDate = "";

                repPaymentOption = "";
                billingFrequency = "";
                futurePaymentAmount = "";
                rep_nameOnCard = "";
                rep_ccExpYear = "";
                rep_ccExpMonth = "";
                rep_cardNumber = "";
                rep_cardTypeTemp = "";
                rep_cardType = "";
                rep_accHolderName = "";
                rep_accNumber = "";
                rep_routingNumber = "";
                rep_accType = "";
                enableAutopay = "false";


                policyNumber = $("#policyNumber").val();

                var contentObject = {
                        applicationID : applicationId,
                        todaysPaymentOption : todaysPaymentOption,
                        paymentOption : paymentOption,
                        nameOnCard : nameOnCard,
                        ccExpYear : ccExpYear,
                        ccExpMonth : ccExpMonth,
                        cardNumber : cardNumber,
                        cardCVVCd : cardCVVCd,
                        cardType : cardType,
                        accHolderName : accHolderName,
                        accType : accType,
                        accNumber : accNumber,
                        routingNumber : routingNumber,
                        paymentAmount : paymentAmount,
                        repetitiveDrawDate : repetitiveDrawDate,
                        repPaymentOption : repPaymentOption,
                        billingFrequency : billingFrequency,
                        futurePaymentAmount : futurePaymentAmount,
                        rep_nameOnCard : rep_nameOnCard,
                        rep_ccExpYear : rep_ccExpYear,
                        rep_ccExpMonth : rep_ccExpMonth,
                        rep_cardNumber : rep_cardNumber,
                        rep_cardType : rep_cardType,
                        rep_accHolderName : rep_accHolderName,
                        rep_accNumber : rep_accNumber,
                        rep_routingNumber : rep_routingNumber,
                        rep_accType : rep_accType,
                        enableAutopay : 'false',
                        policyNumber : policyNumber

                        };
                        // covert to query string format
                        var parameters = $.param(contentObject);

                        var paymentProcessorURL = $('#userDetailsValidatorUrl').val();

                    $.ajax({
                        type : "POST",
                        url : paymentProcessorURL,
                        crossDomain:true,
                                cache:false,
                        timeout: 15000,
                        data : parameters,
                        dataType: 'jsonp',
                        success : function(response) {
                         //response = parseJsonResponse(response);

                                processAjaxBillingResponse(response,todaysPaymentOption);
                        },
                        error : function(){
                         // if ajax call fails then handle error and display message on screen
                                var errorData = {"paymentAmount": paymentAmount};
                                var errorMessage = getPaymentErrorMessage("systemError",errorData);
                                showPaymentOptionsPage();
                                setGlobalErrorMessage("#globalValidation",errorMessage);
                        }
                    });
        }