gpt4 book ai didi

javascript - 变量未传递给 Ajax 调用 : undefined variable

转载 作者:行者123 更新时间:2023-12-02 18:12:46 30 4
gpt4 key购买 nike

我从原始OP中编辑了这个问题,以更好地代表我的问题。

如何使用 AJAX 传递变量 data-uid

现在变量没有被传递。

var uid = $(this).data("uid"); 不起作用 = 未定义

var uid = '199'; 被传递。有效。

是否可以有类似的东西:var uid = $uid;

HTML

 <form>
<fieldset>
<textarea id="post_form" type="text" data-uid="<?php echo $uid ?>"/></textarea>
<button type="submit" id="add" value="Update" name="submit" />OK</button>
</fieldset>
</form>

JS

$(function() {
$("#add").click(function() {
var boxval = $("#post_form").val();
var uid = $(this).data("uid"); // this needs to be changed
var dataString = 'post_form=' + boxval + '&uid=' + uid;
if (boxval == '') {
return false;
} else {
$.ajax({
type: "POST",

$.ajax({
type: "POST",
url: "add.php",
data: dataString,
cache: false,

success: function(html) {
parent.html(html);
}
});
return false;
});
});

最佳答案

代码中的问题:

var uid = $(this).data("uid");

您正在尝试换行 this进入 jquery 对象,但在此上下文中它是按钮对象,那么您试图从中获取未分配的内容

你应该使用:

var uid = $('#post_form').attr('data-uid');

或者,您可以添加<input type="hidden" name=... value=...并从中获取 id,这是更通用的方式

关于javascript - 变量未传递给 Ajax 调用 : undefined variable,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19576819/

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