Javascript 变量不';无法传递到Ajax调用:未定义变量

Javascript 变量不';无法传递到Ajax调用:未定义变量,javascript,ajax,Javascript,Ajax,为了更好地代表我的问题,我从最初的OP中编辑了这个问题 如何使用AJAX传递变量数据uid 现在这个变量没有被传递 var uid=$(this.data(“uid”)不工作=未定义 varuid='199'被传递。工作 是否可以有如下内容:varuid=$uid HTML 看起来您的问题在于数据属性应该是data uid=“somevalue” 在以下代码中检查此小提琴问题: var uid=$(this.data(“uid”) 您试图将这个包装到jquery对象中,但在这个上下文中它是but

为了更好地代表我的问题,我从最初的OP中编辑了这个问题

如何使用AJAX传递变量
数据uid

现在这个变量没有被传递

var uid=$(this.data(“uid”)不工作=未定义

varuid='199'被传递。工作

是否可以有如下内容:
varuid=$uid

HTML


看起来您的问题在于数据属性应该是data uid=“somevalue”


在以下代码中检查此小提琴问题:

var uid=$(this.data(“uid”)

您试图将
这个
包装到jquery对象中,但在这个上下文中它是button对象,然后您试图从中获取未分配的内容

你应该使用:

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


或者,您可以添加
您可以显示相关的html吗?
.like
元素是什么样子的?您要执行POST而不是GET,请使用GET和
url:“delete.php?”+dataString
发布一些HTML代码,并确保没有任何其他具有相同类名的元素可能会造成干扰。@ChHr使用
var uid=$('Post_form').attr('data-uid')+1谢谢您的回复。我已经编辑了我的问题。刷新页面时,
data id=“
回显正确的uid。问题在于AJAX回调期间:添加新项时,
data id
未定义。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>
$(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;
    });
});