簡體   English   中英

AJAX在下拉菜單中更改PHP

[英]AJAX on dropdown change PHP

我嘗試使用Ajax(我第一次),但我不知道我在做什么不好。 我有兩個文件:home.html和ajax.php

在第一個(home.html)我有這個

<html>
<head>
    <script type="text/javascript" src="jquery-2.1.3.min.js"></script>
    <script type="text/javascript">
    jQuery(document).ready(function(){
        jQuery('#Client_ID').live('change', function(event) {
            $.ajax({
                url     : 'ajax.php',
                type    : 'POST',
                dataType: 'json',
                data    : $('#myform').serialize(),
                })
            .done(function(data) {
                 for(var id in data) {        
                              $(id).val( data[id] );
                 }

            });
        });
    });
    </script>
</head>
<body>
    <form id='myform'>
     <select name='Client_ID' id='Client_ID'>
       <option value=''>Select</option>
       <option value='1'>Client 1</option>
       <option value='2'>Client 2</option>
     </select>
     <input type='text' name='address1' id='address1'>
      </form>
</body>
</html>

和我的AJAX.php文件是

<?php
define('WP_USE_THEMES', false);
require('../wp-blog-header.php');

global $wpdb;
$clientid = $_POST['Client_ID']; // Selected Client Id
$result = $wpdb->get_row( "SELECT * FROM wp_com_plantillas WHERE id=$clientid" );
$addr1 = $result->asunto;
$arr = array( 'input#address1' => $addr1);
echo json_encode( $arr );
?>

在數據庫連接上,我使用wordpress全局var $wpdb

為了測試ajax.php,我通過GET更改了POST ,並像ajax.php?client_id = 1一樣加載了url,結果還可以,但是當我在home.html上對其進行測試時,當下拉列表更改時,輸入內容無法填寫。

非常感謝

如果您使用的是Wordpress,請考慮閱讀本文,其中介紹了如何在Wordpress上正確聲明Ajax

另外,如果您使用的是Chrome,請充分利用開發者工具。 F12 ,您可以看到一個名為Network的選項卡。 您頁面執行的每個請求都將記錄在該頁面中。 如果您只想過濾AJAX請求,請單擊過濾器按鈕,然后選擇XHR 每行都是一個請求,每個請求都可以在單擊時提供有關響應的信息。 檢查該響應是否正常,如果響應代碼實際上是200。

暫無
暫無

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

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