【问题标题】:How to send and receive hidden value using Ajax如何使用 Ajax 发送和接收隐藏值
【发布时间】:2016-10-01 06:06:55
【问题描述】:

这是我在 php 中的工作 ID。

<td id="JobId"><?php echo $JobResults['id_job']; ?></td>

这是我的重新邀请按钮,当我单击此按钮时,我必须使用 ajax 发送作为作业 ID 的隐藏值:

<button id="ReInvite">Reinvite</button>

这是我的 ajax 调用:

$('#ReInvite').click(function() {
    JobId = $('#JobId').val();
    $.ajax({
        url: "job-controller.php",
        method: "POST",
        data: {'action':'reinvite','JobId' : + JobId},
        dataType: "json",
        success: function (response) {
                console.log(response);
                $("#showMessage").html(response['message']);
        },
        error: function (request, status, error) {
            $("#showMessage").html("OOPS! Something Went Wrong Please Try After Sometime!");
        }
    });
    return false;
});

这是我调用隐藏值的控制器页面:

if($_POST['action']=='reinvite'){ 
    $Jobid = trim($_GET['JobId']);
    echo $JobId;
    exit;
});

我的错误是作业 ID 值为零。

【问题讨论】:

  • 将您的data: {'action':'reinvite','JobId' : + JobId}, 更改为data: {'action':'reinvite','JobId' : + $('#JobId').html()}, 并尝试
  • @DavidR 成功了,谢谢。
  • 你声明了 JobId var 吗?
  • 您正在使用 JobId = $('#JobId').val();要检索作业 id,但在您的 html 中,您有 保存 JobId 值,您应该在 .val() 上使用 .text() 代替,因为 元素没有方法 .val()
  • @AbdulWaheed 好的!

标签: javascript php jquery ajax hidden


【解决方案1】:

你需要改变你的,

data: {'action':'reinvite','JobId' : + JobId},

作为,

{'action':'reinvite','JobId' : + $('#JobId').text()},

希望这会有所帮助!

【讨论】:

    【解决方案2】:

    改变这一行:

    JobId = $('#JobId').val();
    

    到:

    JobId = $('#JobId').text();
    

    val()in jQuery 用于从文本区域和输入中提取数据。您可以使用 text() 从 html 元素中提取文本,或使用 html() 提取该特定元素中的整个 html。

    【讨论】:

      【解决方案3】:

      应该是$_POST['JobId'] 而不是$_GET['JobId']

      【讨论】:

        【解决方案4】:

        您必须从 $_POST 而不是 $_GET 获取它。

        【讨论】:

          猜你喜欢
          相关资源
          最近更新 更多
          热门标签