我是新來的ajax,但我真的很想學習。我已經建立了一個通過ajax提交的表單(強大的專業版)。在提交按鈕,我對的onclick功能:如何從PHP返回數據到jQuery AJAX
<div class="frm_submit"> <input id="btn-max-hyp" onclick="add_customer()" type="submit" value="[button_label]" [button_action] /> <img class="frm_ajax_loading" src="[frmurl]/images/ajax_loader.gif" alt="Sending"/> </div>
我自定義的js文件:
jQuery(document).ready(function($){
$('#form_maxhyp').on("submit", add_customer);
function add_customer() {
var form_maxhyp = $(this).serialize();
$.ajax({
type:"POST",
url: frontendajax.ajaxurl,
data: form_maxhyp,
success: function(data)
{
\t $("#test").html(data);
}
});
return false;
}
});
和最後的代碼在我function.php
<?php
add_action('wp_enqueue_scripts', 'add_frontend_ajax_javascript_file');
function add_frontend_ajax_javascript_file()
{
\t wp_enqueue_script('ajax_custom_script', get_stylesheet_directory_uri() . '/ajax-javascript.js', array('jquery'));
\t wp_localize_script('ajax_custom_script', 'frontendajax', array('ajaxurl' => admin_url('admin-ajax.php')));
}
add_action('wp_ajax_add_customer', 'add_customer');
add_action('wp_ajax_nopriv_add_customer', 'add_customer');
function add_customer($entry_id, $form_id)
{
\t if ($form_id == 6)
\t {
\t \t global $wpdb, $frmdb;
\t \t $form1 = '6';
$value = $_POST['item_meta'][222];
/* a lot of if and else statements */
/* Echo values */
\t \t echo "'".$value. "'";
\t }
\t
\t die();
}
我想將值設置爲我的div。 在控制檯日誌中,我收到一個錯誤:ReferenceError:add_customer未定義。
也許這是一件非常簡單的事,我只是沒有看到。我在這裏做錯了什麼?
刪除'onclick =「add_customer()」',你不需要那個。在PHP方面,你的回調函數沒有收到任何參數,從獲取/發佈變量中獲取它們。 – vidja
刪除這個技巧。謝謝!! – Annemieke