在AJAX响应文本中调用类

时间:2016-06-16 11:33:32

标签: javascript php jquery json ajax

我有div我正在获得ajax响应

<div id="demo"></div>

作为回应,我得到三个带有id和值的按钮

<button type="button" class="Model" onclick="ModelAppAll(<?php echo $i; ?>)">Approve All</button>
<button type="button" class="Model" onclick="ModelRejAll(<?php echo $i; ?>)">Reject All</button>

现在我想调用一个函数并在警告框中获取$i值,如

function ModelAppReqId1(){
    alert(this.id);
}

或者像jquery

这样
$(".model").click(function{
    alert(this.value);
});

简而言之,我希望像实际的DOM元素一样使用AJAX响应。我无法在响应文本中找到任何类[模型]。 请给我一些想法。

2 个答案:

答案 0 :(得分:0)

如果您使用jQuery附加委派的单击事件处理程序,那么您可以通过将PHP代码中的$i变量放在按钮上的data-*属性中来实现此目的,然后您可以在该按钮中检索该变量。事件处理程序试试这个:

<button type="button" class="model" data-i="<?php echo $i; ?>">Approve All</button>
<button type="button" class="model" data-i="<?php echo $i; ?>">Reject All</button>
$(document).on('click', '.model', function() {
    var i = $(this).data('i');
    // use i here...
})

请注意document仅用于此处的示例。理想情况下,您应该将该选择器更改为与页面加载时DOM中可用的按钮最近的父元素。

答案 1 :(得分:0)

只是在没有jQuery的情况下提供答案:

当用这样的html元素调用js-function时:

<button type="button" class="Model" onclick="ModelAppAll(<?php echo $i; ?>)">Approve All</button>

您将i作为参数传递给该被调用的函数:

function ModelAppAll(i){
    alert(i);
}