我正在设计一张销售发票表格。我可以从MySQL中提取数据进行选择。
当涉及到项目时,项目的数量是可变的。有时是3项,有时是20项。
如何根据用户输入的所需行数来添加行和删除行(所有这些行都将从MySQL中选择下拉列表)?
发布于 2011-05-01 20:36:24
这是你可以通过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>现在最重要的是
回显你的选择框名是items
您希望列出包含某些html元素的数据;
您的get-items.php应该输出(echo)如下所示,以便在页面中使用它(假设它类似于include。无论您要回显什么,它都会包含其中的所有html元素,并指向您想要使用它的页面。
$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.
});
});我们在这里所做的非常简单。在Jquery & Json的帮助下,我们从get-product-info.php收集了有关产品的信息。我们创建了productSetup jquery数组并分配了来自get-product-info.php的返回值
当您从get-product-info.php收集数据时,为了让我们的工作更轻松,我们将使用Json将数据从PHP转换为Jquery。
get-product-info.php重要信息
Jquery查询完成后,创建一个新的数组以array.
示例
<?php
#Assuming $data is your new results array
echo json_encode($data);
?>我们使用Json轻松地将数据从一种语言传输到另一种语言。在恳求我的回答时,我已经给了你一个发送信息的代码。当用户做出更多选择时,只需将它们发送到您的php脚本,并通过Json收集返回的结果来更改页面中的html元素。
有关更多信息,请查看和。
我希望这能帮到你
https://stackoverflow.com/questions/5848192
复制相似问题