美好的一天。
在我的页面上找到了脚本:
$('.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',...
无效。
哪里可能有错误?
请告诉我如何正确使用第一个脚本?
答案 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
});