将使用唯一的div id创建此类div的数量, 当我点击我点击它时,它应显示该产品的警报, 我这样做是为了
<div id="xyz{productid}">
Click Me
</div>
.....
<script type="text/javascript">
var uuid="{productid}"
</script>
<script src="file1.js">
来自file1.js的代码
$(function () {
var d = "#xyz" + uuid;
$(d).click(function () {
alert("Hello" + uuid);
return false;
});
alert(d);
});
所以代码也没关系,但它的基本问题是, 因为我在我们有产品数量的类别页面上这样做,所以此功能仅限于最后一个产品图块, 我希望它只被绑定到特定的div,只有它被称为
.............................. 得到了解决方案 抱歉迟到的回复,是在周末假期,但我解决了它的类型的架构,我们在页面上创建一个对象与每个瓷砖,并在页面加载时我们初始化所有的类变量,所以你可以得到单独的div id当一个函数绑定到它时,仍然可以使用其类变量中的数据,我在这里发布我的代码,所以如果有人想要可以使用它,
UniqeDiv= new function()
{
var _this = this;
var _divParams = null;
var _uuid=null;
//constructor
new function(){
//$(document).bind("ready", initialize);
//$(window).bind("unload", dispose);
_uuid=pUUID;
initialize();
$('#abcd_'+_uuid).bind("click",showRatingsMe)
dispose();
}
function initialize(){
}
function showRatingsMe(){
alert(_uuid);
}
function dispose(){
_this = _divParams = null
}
}
//In a target file, im including this js file as below
<script type="text/javascript">
var pUUID="${uuid}";
</script>
<script type="text/javascript" src="http://localhost:8080/..../abc.js"></script>
答案 0 :(得分:2)
您可以使用attribute selector with starts with通配符与jQuery on()绑定点击事件以动态添加元素。
$(document).on("click", "[id^=xyz]", function(){
//your code here
alert("Hello"+this.id);
return false;
});
答案 1 :(得分:0)
我会为每个动态div添加一个类,以便更容易查询。在下面的示例中,我使用类dynamic
标记动态添加的div,并应该应用此单击侦听器。
要附加事件,您可以使用jQuery的on()函数委托事件。委托事件将触发DOM中的当前和未来元素:
$(function() {
var d="#xyz"+uuid;
$(document).on('click', 'div.dynamic', function() {
alert("Hello"+uuid);
return false;
});
});
您可以阅读有关事件委派here的更多信息。
答案 2 :(得分:0)
您可以使用
$( “[ID * = 'DIVID _']”)。单击(函数(){ });
但为此您需要确保所有div ID都以“divid _”开头。