0

我正在研究 MVC4 jQuery。我需要找到标签下的按钮 ID anchor。这是我的 jQuery 代码:

// drop event handler
addEvent(dropAreas, 'drop', function (event) {
    alert(5);
    if (event.preventDefault) event.preventDefault();

    // get dropped object
    var iObj = event.dataTransfer.getData('obj_id');
    var oldObj = document.getElementById(iObj);

    // get inner text
    var linkText = oldObj.innerHTML;
    oldObj.className += 'hidden';

    // remove object from DOM
    oldObj.parentNode.removeChild(oldObj);

    // add similar object in another place
    this.innerHTML += '<a id="' + iObj + '" draggable="true">' + linkText + '<button id="btnAdd " style="height:20px;width:20px;">Add</button></a>';

    // and update event handlers
    updateHandlerDrag();

    this.style.borderColor = "#ccc";
    return false;
});

在这一行中,我在上面的代码中定义了一个按钮:

 this.innerHTML += '<a id="' + iObj + '" draggable="true">' + linkText + '<button id="btnAdd " style="height:20px;width:20px;">Add</button></a>';

在上面的代码中,我在锚标记中给出了一个按钮,我需要在下面的代码中触发该 id:

// add SubMenu
var addColBtn = document.querySelectorAll('#btnAdd ');
addEvent(addColBtn, 'click', function (event) {
    alert('addingSubmenu');

    if (event.preventDefault) event.preventDefault();
    alert('adding');
    // recalculate widths for columns
    var oCols = document.querySelector('div.columns');
    alert(sub);
    var iChilds = oCols.childElementCount + 1;
    var dWidth = 50 / iChilds;

    // add single column
    oCols.innerHTML += '<div class="columns" id="drop_' + (iChilds + 1) + '" droppable="true"><img src="images/delete.png" onclick="removeColumn(this)" /></div>';

    // set new widths
    for (var i = 0; i < iChilds; i++) {
        oCols.children[i].style.width = dWidth + '%';
    }

    // update handlers
    updateHandlerDrop();

    return false;
});

我怎样才能做到这一点?

4

2 回答 2

0
     $('a').click(function(){
       console.log( $(this).find('button').attr('id'))
     });
于 2012-10-23T10:04:42.117 回答
0

首先,你想用这行代码做什么???

this.innerHTML += '<a id="' + iObj + '" draggable="true">' + linkText + '<button id="btnAdd " style="height:20px;width:20px;">Add</button></a>'; 

如果我在标记(小提琴链接)上方的 html 字符串中填写一些值,将准备以下内容....

<a id="someId" draggable="true">SomeText<button id="btnAdd " style="height:20px;width:20px;">Add</button></a>​

无论你在这里尝试什么......你做错了。在锚标签内插入按钮是完全错误的!

其次,要使用 jquery 获取按钮/锚标记,可以使用 jquery 选择器,例如

var selectedItem = $("#uniqueIdGoesHere");

并触发点击事件,你可以写这个

$("#uniqueIdGoesHere").bind("click", function(){
  // write here what needs to be triggered.
});
于 2012-10-23T10:06:18.573 回答