2017-06-15 77 views
0

荫开发使用PhoneGap的应用程序,一切都会很好,但我想后,我在同一个页面得到的另一功能的QR码值触发一个ajax后,有没有在用户获得扫描值后立即触发它?代码有点乱...的Javascript如何触发Ajax调用的函数完成

<script type="text/javascript"> 
      $(document).ready(function() { 
`var uemail = localStorage.getItem("semail"); 
document.getElementById("x").innerHTML = uemail;` 

     var dataString = "email=" + email + "&secode=" + value + "&insert="; 
      var h = localStorage.getItem("secode"); 
     $("#conf").click(function() { 
       $.ajax({ 
        type: "POST", 
        url: "http://example.com/auth.php?email="+uemail+"&secode="+h+"", 
        data: dataString, 
        crossDomain: true, 
        cache: false, 
        beforeSend: function() { 
        $('#loading').show(); 
        }, 
        success: function(data) { 

         if (data == "success") { 

          alert("DONNNEEE"); 
         } else if (data == "error") { 

         alert("error"); 
         } 
        } 
       }); 
       return false; 
        }); 
        }); 

     function logoutck() { 
    var r = confirm("هل انت واثق من ذلك؟"); 
    if (r) { 
     window.location.href = 'login.html' 
    } 
} 

    function scan() 
      { 
       cordova.plugins.barcodeScanner.scan(
        function (result) { 
         if(!result.cancelled) 
         { 

          if(result.format == "QR_CODE") 
          { 
          var value = result.text; 
          localStorage.setItem("secode", value); 
           var h = localStorage.getItem("secode"); 
           alert(h); 
          } 
         } else{ 
         alert("U CANCELLED IT"); 
         } 
        }, 
        function (error) { 
         alert("Scanning failed: " + error); 
        } 
       ); 
       } 


</script> 

</head> 

<body> 
<div id="loading"> 

</div> 
    <div class="bar bar-header bar-positive" style="margin-bottom:80px;"> 
     <h1 class="title">EasyQ</h1> 
     <a class="button button-clear" onclick="logoutck();">خروج</a> 
    </div> 

    <br/> 
    <br/> 
    <div class="container"> 




    <p style="text-align: right;">:انت مسجل دخولك ك</p> 

    <div align="right"><span class="badge" align="right" dir="rtl" style="text-align: right;" id="x"></span></div> 
    <br> 

<a target="_blank" href="javascript:scan();" style="text-decoration: none"><button>Scan</button></a> 
    <br><br><br><br> 
    <button id="conf">confirmo</button> 
    <script> 
    $(document).ready(function() { 
    var uemail = localStorage.getItem("semail"); 
document.getElementById("x").innerHTML = uemail; 

     var dataString = "email=" + email + "&secode=" + value + "&insert="; 
      var h = localStorage.getItem("secode"); 
     $("#conf").click(function() { 
       $.ajax({ 
        type: "POST", 
        url: "http://easyq.hol.es/easyqappfiles/qrauth.php?email="+uemail+"&secode="+h+"", 
        data: dataString, 
        crossDomain: true, 
        cache: false, 
        beforeSend: function() { 
        $('#loading').show(); 
        }, 
        success: function(data) { 

         if (data == "success") { 

          alert("DONNNEEE"); 
         } else if (data == "error") { 

         alert("error"); 
         } 
        } 
       }); 
       return false; 
        }); 
        }); 


</script> 
+0

使成功的另一个Ajax调用你也可以传递参数的功能? – Silencer310

+0

@ Silencer310不......看看QR码的JavaScript ..做u看看行(result.format ==“QR_CODE”),我想要做的是一个Ajax调用 –

回答

0

写你的ajax调用作为一个函数,并在你需要它时调用它。

function ajaxCall(){ 
    $.ajax({ 
    success: function(){ 
     // do something 
    } 
    }); 
} 

然后

if(result.format == "QR_CODE") { 
    ajaxCall(); 
} 

如果需要

+0

非常感谢,我去以后一定要试一试 –

+0

不客气! – Silencer310

+0

它没有工作..我没有AjaxCall的(),我把它之后如u说......还是一样..它扫描,当它完成没有AJAX调用 –

相关问题