如何在透明 div 内设置输入元素的名称值?

How to set the name value of an input element, inside a transparent div, on drop?

我正在将一个项目拖到输入元素中,并将输入元素的名称设置为被拖动项目的 ID。然后我读取输入元素名称的值以存储在数据库中。这行得通。但是,我现在想让输入元素在填充后可拖动,以便在必要时将其删除。我通过在输入元素上放置一个透明的 div 来做到这一点,这样 div 可以与输入元素一起拖动以将其删除。现在我无法检索输入元素的名称值(或未设置输入元素的名称值)。我相信是后者。

这有效: 创建 table:

newRows +=      "<table name ='activityTable'>";
newRows +=          "<tbody id='activity2Tablebody' name='test1'>";
newRows +=              "<tr>";
newRows +=                  "<td class='dropValue' name='test2'>";
newRows +=                      "<div class='dragabbleRemove'>";
newRows +=                          "<input class='droppableItem activityWidth' name='test3' disabled></input>";//Droppable Activity Class
newRows +=                      "</div>";
newRows +=                  "</td>";
newRows +=              "</tr>";
newRows +=          "</tbody>";
newRows +=      "</table>";

拖放时将名称 属性 的值设置为拖动项的 ID 属性 的值:

draggableId = (draggable.prop('id'));
droppable.prop('name', draggableId);

检索名字的值属性:

alert ("$(this).find('input').attr('name'): " + $(this).find('input').attr('name'));//id value

然后我在输入元素上放置了一个透明的 div,这样就可以拖动 div 将其移除:

newRows += "<div class='dragabbleRemove'><div>&nbsp;</div>";
newRows +=      "<input class='droppableItem activityWidth' name='test3' disabled></input>";//Droppable Activity Class
newRows += "</div>";

现在这个returns空白:

alert ("$(this).find('input').attr('name'): " + $(this).find('input').attr('name'));//id value

我怀疑需要更改以下行以设置输入元素的名称值;但是,我找不到需要更改的内容(正确的代码):

droppable.prop('name', draggableId);

好的,我放了一些显示和行:

draggableId = (draggable.prop('id'));
droppable.prop('name', draggableId);

正在工作。

经过反复试验,我最终更换了:

alert ("$(this).find('input').attr('name'): " + $(this).find('input').attr('name'));//id value

与:

$(this).find('input[type="text"]').each(function(index,elem){
    alert(elem.name);
});

并在输入元素中添加了"type='text'"。