2017-03-08 32 views
0

我想在帕格模板文件中發送Ajax請求。如何在帕格模板中發送Ajax請求?

form#payment-form() 
    section 
    label(for="amount") 
     input#amount(name="amount" type="tel" min="1" placeholder="Amount"       value="10") 
script(src="scripts/jquery.js") 
script. 
    (function() { 
    var amount = $('#amount').val(); 
    $.ajax({ 
     type: "POST", 
     url: "/posturl", 
     data: {'amount':amount}, 
     success: function(){}, 
     dataType: 'json' 
    }); 
    })() 

但它不起作用,該怎麼辦呢? 我想知道如何在哈巴狗文件內嵌的JavaScript發送Ajax請求

回答

1

對我來說似乎有兩個問題

  1. 你已經把不必要的標籤在你的函數(function(){
  2. 您需要使用document.ready確保HTML內容 準備好下。一旦你的迴應

檢查以下

doctype html 
html 
    head 
    script(src='https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js') 
    script. 
     $(document).ready(function(){ 
     $.ajax({url: "demo_test.txt", success: function(result){ 
     $("#div1").html(result); 
     }}); 
     }); 
    body 
    #div1 
     h2 Let jQuery AJAX Change This Text 
工作的例子,則可以避免這一點,如果你真的不關心DOM
0

這裏有一個與你的哈巴狗模板沒有問題(也許只是你可以#payment-form()後刪除(),因爲它是空的,它不是一個mixin)。但是用你的JS,你馬上發送AJAX請求,你應該將它綁定到一個事件上(點擊一個按鈕,按下輸入等)。然後你必須確定你把你的lib jquery.js放在一個你可以從你的瀏覽器中用scripts/jquery.js訪問的目錄中。如果在此更改後它仍然無法正常工作,請更準確地報告您的錯誤(打開控制檯以獲取消息,讓我們獲得您期望的行爲和獲得的行爲)。