簡體   English   中英

對話框中的jQuery select沒有附加選項

[英]JQuery select in dialog does not have options appended

我正在嘗試使用JQuery對話框來執行類似於打開文件對話框的操作,但是我不是使用文件而是使用數據庫中的記錄來填充對話框。

我遇到的問題是我似乎無法在對話框中將html選項數據加載到html select中。 我在Chrome中使用了Google Javascript調試器,並逐步執行了從我的PHP ajax調用的javascript代碼。 我沒有看到任何錯誤,並且看到了數據並將其放入append語句后正確格式化了。 我不明白為什么它沒有顯示在我的html select中。

謝謝你的幫助。

下面是我的Ajax函數,它接收數據。

函數doOpenAjax(filterStr){

    $.get(
        "contenteditServerAjax.php",
        {filter: filterStr },
        function(data) {
                            var optsArr = data.split('|~|');
                            var seloption = "";

                            $.each(optsArr, function(i) {
                                seloption += '<option value="' + optsArr[i] + '">' + optsArr[i] + '</option>';
                            });
                            $('#chooseArticleName2').find('option').remove().end();
                            $('#chooseArticleName2').append(seloption);
                        },
        "html"
        );

}

作為參考,這是我的php的一部分,其中包含jquery對話框:

<head>
<script>
$(document).ready(function() {

    var dlg = $("#opendiv").dialog({modal:true, height:550, width:650,
                        hide:{ effect: 'drop', direction: "down" },
                        autoOpen:false,
                        maxHeight: 1200,
                        maxWidth: 1200,  
                        minHeight: 250,
                        minWidth: 300, 
                        buttons: { "Open": function() { $('#state').val('Open Doc');        $('#contentform').submit(); $(this).dialog("hide"); },
                        "Cancel": function() { $(this).dialog("close");}}                            
    });
    dlg.parent().appendTo($("#contentform"));  

});
</script>

<div id="opendiv" name="opendiv" title="OPEN">

    <p align="center">Enter Name to Open Article as:</p>
    <p>
        Filter:
        <input name="docFilter2" id="docFilter2" type="text" value="$filter2" maxlen="64" size="28"/>&nbsp; &nbsp;
        <input name="LoadTitles2" id="LoadTitles2" type="button" value="Load Available Titles" 
                                onclick="doOpenAjax( $('#docFilter2').val() );"/>
    </p>
    <p>
        <div id="ajaxOutput2">
            <select name="chooseArticleName2" id="list2" size="8" style="min-width:92%"
                                        onchange="
                                        var mytext = $('#chooseArticleName2 :selected').text();
                                        $('#textBoxArticleName2').val(mytext);">
            </select>
        </div>
    </p>
    <p>
        Document:
        <input type="text" id="textBoxArticleName2" name="textBoxArticleName2" size="56"/>
    </p>
</div>

僅供參考,這樣做會更有效率:

$('#chooseArticleName2').empty().html(seloption);

比這個:

$('#chooseArticleName2').find('option').remove().end();
$('#chooseArticleName2').append(seloption);

暫無
暫無

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

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