将变量传递给Javascript以实现Ajax

时间:2015-09-29 09:33:11

标签: javascript php jquery ajax

我有一个系统,目前在浏览器的html中输出结果表。

可以通过单击每行上的approveCredit按钮来更新这些结果。

我想创建一个javascript catch,它会查找按钮单击并从行中传递给定变量并执行ajax任务。

代码:

PHP回显结果表

$scope.sendTextMessage = function() {
    //Do some socket.io to send $scope.msgInput
    $scope.messageInput = '';
}

Javascript等待按钮点击

<tbody>
 <?php 
 $count = 1;
   while ($row = mysql_fetch_array($test))  
 {?>

 <tr>
    <td class="text-center"><?php echo $count++;?></td>
    <td><?php echo $row['user_id'];?></td>
    <td><?php echo $row['credits'];?></td>
    <td><?php echo $row['notes'];?></td>
    <td><?php echo $row['po'];?></td>
    <td><?php echo $row['date_received'];?></td>
    <td class="text-center">
        <div class="btn-group">
            <a class="btn btn-xs btn-default approveCredit" type="button" value="<?php echo $row['credits'];?>" data-toggle="tooltip" data-original-title="Approve Credit Request"><i class="fa fa-check"></i></a>
        </div>
    </td>
  </tr> 
  <?php } ?>    
  </tbody>

1 个答案:

答案 0 :(得分:2)

试试这个。 实际上你必须使用Jquery attr从ancher获取价值

<a class="btn btn-xs btn-default approveCredit" type="button" value="<?php echo $row['credits'];?>" data-toggle="tooltip" data-original-title="Approve Credit Request"><i class="fa fa-check"></i></a>

值是ancher的一个属性。所以你应该像这样使用它,

var creditid = $('.approveCredit').attr('value');

并且还防止ancher(标记)的默认操作更改您的代码

$('.approveCredit').on('click', function(e) {
        e.preventDefault();
        var creditid = $('.approveCredit').attr('value');

        $.ajax({
            url: "ajax url to update database",
            type: "POST",
            data: {creditid: creditid},
            success: successFunction,
            error: errorFunction
        });

});