我正在設計銷售發票表單。我能夠從MySQL中提取數據進行選擇。銷售發票表單
說到物品,物品的數量是可變的。有時,它有3個項目,有時是20個。
如何根據用戶的輸入添加行和刪除行,以滿足所需的行數(所有這些行將從MySQL中選擇下拉列表)?
我正在設計銷售發票表單。我能夠從MySQL中提取數據進行選擇。銷售發票表單
說到物品,物品的數量是可變的。有時,它有3個項目,有時是20個。
如何根據用戶的輸入添加行和刪除行,以滿足所需的行數(所有這些行將從MySQL中選擇下拉列表)?
這是你可以用PHP & Jquery & Ajax組合做的事情。
<script>
$('select[name=items]').change(function() {
// If selected value is bigger than 0
if ($(this).val() > 0) {
$.post("get-items.php", {itemval: $(this).val()}, function(data) {
//$('#items').fadeIn('slow'); // Remove the beginning // to use this effect.
$('#items').html(data);
});
}
});
</script>
現在重要的是這裏;
get-items.php必須用html中的回聲(如果你想)。例如:
你想用一些html元素列出數據;
<ul>
<li>First Item</li>
<li>Second Item</li>
<li>Third Item</li>
</ul>
的GET-items.php應該輸出(回聲)這樣,才能在頁面中使用它(想象它像包括,無論你將回顯出來,這將包括所有的HTML元素在它的頁面,你想用它。
一旦你的GET-items.php會返回一些輸出,代碼將收集輸出,並添加到具有項ID的元素的響應。對於例如;
<div id="items"></div>
您可以在get-items.php中收集發佈的值;
$itemValue = $_POST['itemval'];
一旦你可以收集有關項目值信息(顯示,不顯示,顯示有限等。這是你的決定)與PHP,之後,這是你要什麼給呼應了決定瀏覽器。
我希望我能正確理解你,我希望這有助於你。
編輯
您的評論後,大約收集取決於用戶的選擇更多的信息(也可以是1個或多個),所以我相信去與將以下最簡單的方法;
我們將使用Json和Jquery。
$.getJSON('get-product-info.php', function(data) {
// Create an array
var productSetup = [];
// Loop and assign Json (returned value) to our new setup array
$.each(data, function(key, val) {
productSetup[key] = val;
// Add values to html elements and other actions here.
});
});
我們在這裏做的很簡單。我們收集了關於產品的信息,從get-product-info.php在Jquery & Json的幫助下。我們創建productSetup jQuery的數組,當您從GET-產品info.php的收集數據,從GET-產品info.php的
分配返回值,我們使我們的生活更輕鬆,我們將使用JSON能夠將數據從PHP轉換爲Jquery。
GET-產品info.php的
例
<?php
#Assuming $data is your new results array
echo json_encode($data);
?>
我們使用JSON來從一種語言方便地傳輸數據到另一個。在回答我的請求時,我已經給了你一個發送信息的代碼。當用戶做出更多選擇時,只需將它們發送到您的PHP腳本,並通過Json收集返回的結果以更改頁面中的html元素。
有關更多信息,請檢查PHP json_encode user manual和PHP json_decode user manual。
我希望這可以幫助
我不確定你想說什麼。你可以添加一些更多的細節嗎? – JohnP 2011-05-01 12:16:23
除了更多的細節,請添加您迄今爲止的數據庫和代碼的結構。這很難猜測。 – 2011-05-01 12:21:09