簡體   English   中英

生成的HTML代碼不可點擊

[英]Generated html code is not click-able

幫幫我,我是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>'; 
} ?>

這是第一次在此網站上發布,對於錯誤和我的英語感到抱歉

很難理解您想要什么,但是在我看來,它是這樣的:

您正在運行$( 'EDITME')。編輯() 只有一次 ,的document.ready事件觸發時。 editable()當時遍歷DOM,並使所有帶有“ editme”類的元素都可單擊。

當您添加帖子並通過AJAX從PHP腳本獲取響應時,響應包含帶有“ editme”類的P標記。 但是由於這是在觸發document.ready之后發生的,因此您將需要在此新頁面元素上再次運行editable()使其可單擊。

非常感謝,我現在真的很難理解該腳本,但是這是我第一次在這里發布腳本,而且我不知道如何問,您的回答對我有幫助,我又花了一些時間在腳本中重復editable() php腳本,ajax的響應,並且正在工作!!! ...再次感謝!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM