проблема с клоном jquery в IE и Chrome - PullRequest
0 голосов
/ 11 ноября 2009

Я пытаюсь скопировать содержимое masterdiv, включая дочерние div. Ниже приведена реализация кода.

<label id="lblMessage" />
<table width="100%">
    <tr>
        <td>
            <div id="colorSelector">
                <div style="background-color: rgb(0, 0, 255);" />
            </div>
        </td>
    </tr>
    <tr>
        <td>
            <div id="dynPageContent"></div>
            <input type="button" id="updContent" value="Update" />
        </td>
    </tr>
</table>

<script type="text/javascript" language="javascript">
    $(document).ready(
    function() {
        $('#colorSelector').ColorPicker({
            color: '#0000ff',
            onShow: function(colpkr) {
                $(colpkr).fadeIn(500);
                return false;
            },
            onHide: function(colpkr) {
                $(colpkr).fadeOut(500);
                return false;
            },
            onChange: function(hsb, hex, rgb) {
                $('#dynPageContent div').css('backgroundColor', '#' + hex);
            }
        });
        if ($("#dynPageContent").length) {
            $("#dynPageContent").html('<%= Model.Page_Content.Trim() %>');
            if ($("#pageContent").length) {
                $("#pageContent").load("/Home/PageContent");
            }
            if ($("#Sidebar").length) {
                $("#Sidebar").load("/Home/Sidebar");
            }
        }

        $('#updContent').unbind('click');
        $('#updContent').click(function(e) {
            var updatedpageContent = $('<div />').append($('#dynPageContent div[id^="pageContent"],div[id^="sideba"]').clone()).remove().html();
            $.getJSON("/Home/UpdatePage/?t=" + new Date(), { pc: updatedpageContent },
            function(data) {
                if (data != null) {
                    if (data == true) {
                        $('#lblMessage').html("Page template updated.");
                    }
                }
            });
        });
    });
</script>

Я загружаю html / divs (заполнители для содержимого) из базы данных и могу изменить цвет фона дочерних divs и обновить заполнители / дочерние div с новым стилем (цветом фона) для базы данных, используя json .

Приведенный выше код отлично работает в Firefox, но в IE и chrome masterdiv (dynPageContent) исчезает.

Что не так с приведенным выше кодом?

1 Ответ

0 голосов
/ 13 ноября 2009

Наконец-то я понял это.

Проблема с тегом html метки.

Я заменил

<label id="lblMessage" />

с

<label id="lblMessage"></label>

Это решило проблему. Странный один ..

...