在javascript中获取动态生成元素的属性值(通过ajax)

时间:2014-08-28 15:43:30

标签: javascript html

我通过ajax在表中生成值。这个值是s。 在这个角色里面有一个锚,它将扮演所有这些角色。这个锚标签有一个类,我用它来用javascript引用它。

此角色中的锚标记具有引用javascript方法的onclick函数,我正在尝试使用此方法获取单击的锚标记的属性之一。 但不幸的是,当我点击角色中的锚标签时,我得到了未定义的错误。

    <tr>

 <td>
                        <a href="#" onClick="JavaScript:filltransfercombo();" class="btn btn-default transferchat" data-operatorid="@avisitor.OperatorID" data-toggle="modal" data-target="#transferModal" title="Transfer chat">
                            <img src="~/Content/images/chaticons/transfer.png" height="20" width="20" />
                        </a>
                    </td>

</tr>

我的意图是收集这个属性 - data-operatorid。我想在我的javascript中使用它进行一些操作。

我的javascript位于

之下
<script type="text/javascript">

 function filltransfercombo() {


            var result = "";
            var active = $('a').index(this);
            var currentoperatorid = $(active).attr("data-operatorid"); //This is the id of the currently attending operator

            console.log(currentoperatorid);

        }

</script>

2 个答案:

答案 0 :(得分:1)

onclick事件不需要javascript:表示法......如果您在href上设置方法,请将其置于其中。

此外,从onclick事件您可以访问this变量,而不是方法。但是,您可以将其作为参数传递,因此:

<a href="#" onClick="filltransfercombo(this);" class="btn btn-default transferchat" data-operatorid="@avisitor.OperatorID" data-toggle="modal" data-target="#transferModal" title="Transfer chat">

和js:

function filltransfercombo(sender) {
    var result = "";
    var currentoperatorid = $(sender).attr("data-operatorid"); //This is the id of the currently attending operator

    console.log(currentoperatorid);

}

答案 1 :(得分:0)

这可以通过jQuery轻松完成。

删除&#34; onClick&#34;您的锚点上的属性,而是将单击函数绑定到锚标记(仅在表格内)。然后在该函数中添加处理代码。

做这样的事情:

<script type="text/javascript">
$(document).ready(function() {
    $('table tr td a').click(function() {
        var result = "";
        var currentoperatorid = $(this).data("operatorid"); //This is the id of the currently attending operator

        console.log(currentoperatorid);
    });
});
</script>

Natrually,您需要确保此页面中还包含jQuery javascript库。