2016-10-01 60 views
4

这是我在php中的工作ID。如何使用Ajax发送和接收隐藏值

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

这是我REINVITE按钮,当我点击这个按钮,我有一个作业ID使用Ajax发送隐藏的价值:

<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值变为零。

+2

改变你的'数据:{ '动作': '重新邀请', '的JobId':+的JobId},'因为'数据:{ '动作': '重新邀请',” JobId':+ $('#JobId')。html()},'并尝试 –

+0

@DavidR它很有用,谢谢。 –

+0

您是否声明JobId var? –

回答

8

您需要更改,

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

如,

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

希望这有助于!

6

改变这一行:

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

到:

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

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

2

你必须从$ _POST而不是$ _GET中获得它。

3

应该$_POST['JobId']没有$_GET['JobId']