簡體   English   中英

Jquery AJAX 和超過 2 個變量的問題

[英]Problem with Jquery AJAX and more than 2 variables

我正在嘗試向我正在制作的網站添加一個告訴朋友部分,但我很難通過 URL 和 AJAX 發送超過 2 個變量。 這是我目前的代碼:

    jQuery("#tellafriendsubmit").click(function() {

        var email = jQuery('#tellafriendemail').val();
        var name = jQuery('#tellafriendname').val();

            jQuery.ajax({
          type: "POST",
      url: "http://www.example.co.uk/tell-a-friend-processor-page/?postname=<?php echo $post_name; ?>&name=name&email="+email,

      success: function(msg){ 
            alert('Your tell a friend recommendation has been sent. Thank you for recommending us.');

      }
    });

});

如果我刪除 '&name=name' 部分,以便只發送郵遞名稱和 email 地址,它可以正常工作,但我還需要發送名稱,以便我可以寫 'Dear $name....'

如何發送額外的第三個變量? 謝謝你的幫助

編輯:

我在tellafriendprocessor 頁面中使用的部分如下所示:

$email = $_POST['email']; $post_name = $_GET['postname']; $name = $_POST['name'];

             $to = $email;
             $subject = "Example - Tell a friend";
             $body = "Dear $name http://www.example.co.uk/ads/$post_name";

             if (mail($to, $subject, $body, $headers)) {

              } else {

              }

您可以使用這段代碼通過 GET 和 POST 方法將參數發送到帶有 AJAX 的頁面

data: { id: 'id', name: 'name' }, // 使用 ajax 發送的多個數據

這是一個例子

$.ajax({ type:"GET", cache:false, url:"welcome.php", data: { id: 'id', name: 'name' }, // multiple data sent using ajax success: function ( html) { $('#add').val('發送的數據'); $('#msg').html(html); } });

您可以嘗試將它們作為 POST 請求正文的一部分(使用data屬性)發送,這將確保這些值被正確編碼:

var email = jQuery('#tellafriendemail').val();
var name = jQuery('#tellafriendname').val();
jQuery.ajax({
    type: 'POST',
    url: 'http://www.example.co.uk/tell-a-friend-processor-page/?postname=<?php echo $post_name; ?>',
    data: { name: name, email: email },
    success: function(msg) { 
        alert('Your tell a friend recommendation has been sent. Thank you for recommending us.');
    }
});

在服務器端,確保您從$_POST hash ( $_POST["name"]$_POST["email"] )中讀取它們。

您需要將name移到字符串之外。 要添加更多鍵值對,您只需將 append 它們添加到查詢字符串中:&key=value

url: "http://www.example.co.uk/tell-a-friend-processor-page/?postname=<?php echo $post_name; ?>&name="+name+"&email="+email

嘗試使用 object 的參數,如下所示:

$.post("/tell-a-friend-processor-page/", { name: "John", email: "<?php echo $post_email; ?>", post_name: "<?php echo $post_name; ?>" },
function(data) {
     alert("Data Loaded: " + data);
});

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM