gpt4 book ai didi

javascript - 如何在 Ajax 中传递没有表单的 div id

转载 作者:太空宇宙 更新时间:2023-11-04 14:32:07 26 4
gpt4 key购买 nike

我正在 try catch 被点击元素的 ID 并将其传递给 php 页面。我没有使用表格。

除了没有数据被发送到 php 页面外,一切正常。当我使用浏览器或 php 日志检查代码时,没有显示任何错误。我只是点击 anchor ,没有任何反应。

我已经进行了广泛的研究,但没有关于这个主题的详细信息。每个主题都讨论通过表单传递信息

HTML代码

<li class="click" id="name"><a href="#">Name</a></li>

JQuery

$(".click").click(function() {
var datastring = $(this).attr('id');
$.ajax ({
type: "POST",
data: datastring,
cache: false,
url: "index.php",
success: function(ht) {
alert(ht);
}
});
});

索引.php

if (isset($_POST['datastring'])) {
$dynamic_list = $_POST['datastring'];
echo $dynamic_list;
}

最佳答案

该函数中的 data 属性应该是一个对象,这样它就可以表示一个 key => value 对,目前你只是给它一个没有名字的值,所以它认为值是名字,没有值。

$(".click").click(function() {
var datastring = $(this).attr('id');
$.ajax ({
type: "POST",
data: {myparam: datastring},
cache: false,
url: "index.php"
});
});

在 PHP 中,您现在应该有索引 $_POST['myparam'],它应该包含元素的 ID。

我会删除 var datastring = $(this.attr('id')); 并直接使用该属性,您的示例将变成这样:

$(".click").click(function() {
$.ajax ({
type: "POST",
data: {myparam: $(this).attr('id')},
cache: false,
url: "index.php"
});
});

编辑

如果你想更改 $_POST 索引的名称,你可以将 myparam 更改为任何你喜欢的名称,如果你想在你的 $_POST 请求成为 datastring 您可以更改以下行:

数据:{ myparam:$(this).attr('id') }

data: { datastring: $(this).attr('id') }

这会改变您的发帖请求:
$_POST['myparam']

$_POST['datastring']

因为这个变量只被使用一次,所以你最好完全不使用它而直接使用直接值:)

关于javascript - 如何在 Ajax 中传递没有表单的 div id,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33780983/

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