簡體   English   中英

通過jQuery AJAX將HTML數組傳遞給PHP

[英]Passing a HTML array to PHP through jQuery AJAX

在使用HTML表單和jQuery AJAX時,我陷入了一個可能非常常見的問題,但我還沒有找到適合我特定需求的正確解決方案......我正在使用Codeigniter Framework。 具體情況如下:

HTML - 帶有數組,地址[]的表單,如:

<form id="addressForm" class="form-horizontal" method="post" action="">    
<div class="form-group">
    <div class="col-lg-9">
        <label class="control-label" for="address[name]">Full name</label>
        <input name="address[name]" type="text" placeholder="" class="form-control">
    </div>
    <div class="col-lg-3">
        <label class="control-label" for="address[email]">Email</label>
       <input name="address[email]" type="text" placeholder="" class="form-control">
    </div>
    </div>
... and so on

jQuery - AJAX調用將兩個參數傳遞給PHP:一個ID和地址數組序列化...

$.ajax({
    type: "post",
    url: "ajax/updateClientAddress",
    dataType: "json",
    data: {
    id: $('select[name="addresses"]').val(),
        address: $("[name^='address[']").serialize(),
    }
...

PHP - 數據處理和客戶端更新

...
 $addressID = $this -> input -> post('id');   // Correctly received
 $addressData = $this -> input -> post('address');
...

我想知道在PHP中訪問數據的每個部分缺少或錯誤,如下所示:

$client -> name = $addressData['name'];

提前致謝。

您需要將id名稱/值對添加到地址參數字符串,並將完成的參數字符串作為數據傳遞。

data: $.param({id: $('select[name="addresses"]').val()}) + "&" + $("[name^='address[']").serialize(),

暫無
暫無

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

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