请帮助我,我是ajax和框架jQuery的新手,我在jQuery中制作一个页面,不同的插件页面,但是当我从ajax接收html代码,并且无法点击时,我使用了一个函数live(),但只是帮助插件删除,编辑插件不起作用,可能是什么问题......
这是用于编辑的脚本
<script type="text/javascript">
$(document).ready(function() {
$('.editme').editable('func/update_data.php', {
submitdata: {
type: "<?php echo $page_type?>"
},
cancel: 'Cancel',
submit: 'OK',
tooltip: 'Click to edit...',
id: 'element_id',
name: 'update_value',
});
});
</script>
这是插件模式窗口和
的脚本$(document).ready(function () {
$('#basicModal input.basic, #basicModal a.basic').click(function (e) {
e.preventDefault();
$('#basicModalContent').modal({
onOpen: function (dialog) {
dialog.overlay.fadeIn('slow', function () {
dialog.data.hide();
dialog.container.fadeIn('slow', function () {
dialog.data.slideDown('slow');
});
});
},
onClose: function (dialog) {
dialog.data.fadeOut('slow', function () {
dialog.container.hide('slow', function () {
$.modal.close();
});
});
}
});
});
$("form#submit_wall").submit(function () {
var message_wall = $('#message_wall').attr('value');
$('#message_wall').val('');
$.ajax({
type: "POST",
url: "func/insert.php",
data: "message_wall=" + message_wall,
dataType: "html",
complete: function () {
$('#basicModalContent').html('<div class="succes"><p>Successful</p> Your record was posted ! </div>');
setTimeout(function () {
$.modal.close()
},
1200);
},
success: function (response) {
$("div#wall").html(response);
//$("div#wall").prepend("<span style='display:none'>"+message_wall+"</span>");
//$("div#wall span").fadeIn();
}
});
return false;
});
});
这是用于生成html的php代码
<?php if(isset($_POST[ 'message_wall'])){
/* Remove HTML tag to prevent query injection */
$message=strip_tags($_POST[ 'message_wall']);
echo '<div class="container_date">
<span style="float: left;">
<p class="editme" id="200">Sex</p>
</span>
<span style="float: right;" align="left">
<a href="javascript:void(0)" id="200" class="delete">Delete</a>
</span>
<br class="clearfloat">
</div>';
} ?>
这是第一次在本网站发帖,对不起错误和我的英语
答案 0 :(得分:1)
很难理解你想要什么,但它看起来像这样:
当document.ready事件触发时,您正在运行$('。editme')。editable()一次。 editable()在那个时候通过DOM,并使所有带有“editme”类的元素可以点击。
当您添加帖子并通过AJAX从PHP脚本获取响应时,响应包含一个带有“editme”类的P标记。但是,由于这是在document.ready触发后发生的,因此您需要在此新页面元素上再次运行editable() 以使其可单击。
答案 1 :(得分:0)
非常感谢,我现在真的很难理解剧本,但是我第一次在这里发帖,我不知道怎么问,你的答案对我有帮助,我又花了一次时间来重复编辑( )在PHP脚本内部,ajax的响应,并正在工作! ...再次感谢!