gpt4 book ai didi

通过 AJAX 更新的 Php 对象列表

转载 作者:行者123 更新时间:2023-11-29 22:22:38 27 4
gpt4 key购买 nike

我想做的是我有一个要出售的元素列表,当有人选择其中一个时,我希望它添加到元素列表中并显示在同一页面上,旁边有一个删除按钮这样用户就可以插入/删除元素,然后当它点击确认按钮时,它就会完成销售。

我一直在查看 ajax 示例以及如何创建动态组件,但我不确定该怎么做。我该怎么做?

这是单击表格单元格时我的 javascript 函数:

function selectRow(id) {
$.ajax
({
type: "POST",
url: "venda.php",
data: {selected: id},
cache: false,
success: function(data)
{
}
});
}

ajax 函数有效,但我怎样才能让 php 将元素添加到 html 并添加引用该 iten 的删除按钮?最后,我必须获取所有元素并将其放入客户的“包”中。

最佳答案

好吧,有几种方法可以做到这一点。一种选择是将所选项目存储在 $_SESSION 变量上,然后将其打印为 venta.php 中的 html 标记。此外,您可以将单击事件添加到项目(元素)以删除它们。这就像一个伪代码,当然,您需要验证数据,至少这试图解释一个流程,说明您如何在没有插件的情况下使用 php、jquery 和 javascript 处理删除/添加项目。

shop.php(其中存在要选择的项目表):

<!-- here you add jquery and your own javascript to play with that -->

<table>
<tr>
<td><a name="item_id" href="#">Item one</a></td>
</tr>
</table>
<div class="my-selected-items"></div>
<a hef="link-to-proceed-order">Proceed order</a>

JavaScript:

// add the result of php response to the *selected items* div
function selectRow(id) {
$.ajax
({
type: "POST",
url: "venda.php?action=add",
data: {selected: id},
cache: false,
success: function(data)
{
$('.my-selected-items').html(data);
register_delete_action();
}
});
}

function register_delete_action()
{
$(".remove-item").click(function(){
$.ajax
({
type: "POST",
url: "venda.php?action=delete",
data: {selected: id},
cache: false,
success: function(data)
{
$('.my-selected-items').html(data);
register_delete_action();
}
});
});
}

文塔.php

$action = $_GET['action'];

switch ($action)
{
case "add": addItem();
case: "delete": deleteItem();
}

function addItem(){
$selected_id = $_POST['selected'];

if(!array_key_exists('items', $_SESSION))
{
$_SESSION['items'] = array();
}
$_SESSION['items'][$selected_id] = array("id" => $item['id'], "name" => $item['name']);


//print the selected items in html markup
echo "<ul>";
foreach ($_SESSION['items'] as $id => $selection)
{
echo '<li> <a href="#" class="remove-item" name="' .$selection["name"] . '">' .$selection["name"] . '</a> </li>';
}
echo "</ul>";
}

function deleteItem(){
$selected_id = $_POST['selected'];
unset($_SESSION['items'][$selected_id]);

//print the selected items in html markup
echo "<ul>";
foreach ($_SESSION['items'] as $id => $selection)
{
echo '<li> <a href="#" class="remove-item" name="' .$selection["name"] . '">' .$selection["name"] . '</a> </li>';
}
echo "</ul>";
}

关于通过 AJAX 更新的 Php 对象列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11495824/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com