如何使用jquery脚本新对象?

时间:2013-06-13 14:56:15

标签: jquery

美好的一天。

在我的页面上找到了脚本:

$('.crop_photo').on('click',function(){

$('#form_cropbox').ajaxForm(
{
url:        'update.php', 
success:    function(data) {
}
}).submit();
});

使用其他脚本我在页面上创建了一个新对象(图像和表单):

.....
$('#edit_photo').html(
'<img src="./Images/Temp/' + data + '" id="cropbox" width="600" />'+
'       <form action="update.php" method="post" id="form_cropbox" onsubmit="return checkCoords();">'+
'           <input type="hidden" id="x" name="x" />'+
'           <input type="hidden" id="y" name="y" />'+
'           <input type="hidden" id="w" name="w" />'+
'           <input type="hidden" id="h" name="h" />'+
'           <input type="hidden" id="f_count_v" name="f_count_v" value="'+ count + '" />'+
'           <input type="button" value="Сохранить область фотографии" class="btn btn-large btn-inverse crop_photo" />'+
'       </form>'
);
.....

但是,当我点击课程&#34; crop_photo&#34; $('.crop_photo').on('click',...无效。

哪里可能有错误?

请告诉我如何正确使用第一个脚本?

2 个答案:

答案 0 :(得分:3)

您需要使用事件委派 -

$('#edit_photo').on('click','.crop_photo',function(){

这是您更改后的代码 -

$('#edit_photo').on('click', '.crop_photo', function () {
    $('#form_cropbox').ajaxForm({
        url: 'update.php',
        success: function (data) {}
    }).submit();
});

答案 1 :(得分:1)

因为这些是动态添加的do Event Delegation

使用

$(document).on("eventname",'.crop_photo', function(event,ele){
 //Your code goes here
});