单击第一个div设置第二个div的名称

时间:2014-02-06 17:17:42

标签: javascript jquery css html

我是jquery(真正的新手)的新手,但我正在努力解决问题。 我不能让这个脚本以所需的方式工作。 有两个div。当您单击第二个时,也会单击第一个。 当你有第一个div的特定名称时,这对我有用。 两个例子的html + css:

<div id ="div11" name="this-is-name-of-div" data-unique="this-is-name-of-div" style="width:100px;

高度:100像素; 背景颜色:蓝色; color:white; cursor:crosshair;“&gt; FIRST ELEMENT

第二部分

working axample-jsfiddle

$(document).ready(function () {
$("#div11").bind("click", (function () {
    alert("DIV11 is clicked!");
}));
$(".item").bind("click", (function () {
    $('div[name=this-is-name-of-div]').trigger("click");
    return false;
}));
});

第一个div具有与第二个div data-unique属性相同的name属性。通过单击第二个div我想设置要点击的div的名称,但在这些方括号下我无法使其工作。有人可以帮我解决这个问题吗?请事先提供帮助。

$(document).ready(function () {
$("#div11").bind("click", (function () {
    alert("DIV11 is clicked!");
}));
$(".item").bind("click", (function () {
    $('div[name=$(this).attr("data-unique")]').trigger("click");
    return false;
}));
});

jsfiddle-notworking-to-achieve [的jsfiddle-未工作到实现] [3]

1 个答案:

答案 0 :(得分:0)

试试这个:

var name = $(this).attr("data-unique");
$('div[name=' + name + ']').trigger("click");

但如果name包含某些特殊字符],则可能会失败。如果这是一个问题,请尝试使用filter方法,如下所示:

var name = $(this).attr("data-unique");
$('div').filter(function() { return $(this).attr('name') == name; })
        .trigger("click");

Demonstration