0

在我克隆了一个带有按钮的 div 之后,我意识到我不能(也许)更改传递给按钮事件的参数。

埃斯:

var containerdiv = $('<div></div>'); //DivCreation
//. . . . . .
$(containerdiv).attr('id', 'comcreation_' + idcom);//DivCreation Attrib ID
var clonebutton = $('<button/>') //First button Clone
    .text("Clone")
    .click(({div: containerdiv, idcom: id}), function (e) {
        totcloned++;
        var newcontainer = containerdiv.clone(true);
        $('#com' + e.data.idcom, newcontainer).text("Nuovo");
        $('input[name="comid"]', newcontainer).val(-1);
        $(newcontainer).attr('id', 'comcreation_' + 'clonediv' + totcloned);
        $('body').append(newcontainer);
    });
var savebutton = $('<button/>') //Save button
    .text("Save")
    .click(({div: containerdiv}), function (e) //"div:container" is parameter i need to change in cloned div
    {
        var div = $(e.data.div);
        //Selector on div to save data
        // . . . . .
    }
//. . . . . . .
containerdiv.append(savebutt);
containerdiv.append(clonebutton);
$('body').append(containerdiv);

当我第一次单击未克隆的 div 上的保存时,一切都是正确的。当我在克隆的 div 上单击保存时,保存功能将未克隆的 div 作为参数而不是克隆的。

如何将传递给保存按钮事件的“div”更改为“克隆的 div”?

谢谢 :)

4

1 回答 1

0

改变

  var div = $(e.data.div);

  var div = $(this).parent(); 

解决了问题!

谢谢你 :)

于 2013-09-18T10:08:53.730 回答