0

自動的に生成される次のコードがあります。jQuery コードを使用して、すべての値href("/listing-agent-staff/barack-obama" の部分) を取り出し、この値をドロップダウン メニューに挿入します。 .

自動生成コード:

<div class="StaffBlock StaffName">
<a href="/listing-agent-staff/barack-obama">Barack Obama</a>
</div>
<div class="StaffBlock StaffName">
<a href="/listing-agent-staff/bill-clinton">Bill Clinton</a>
</div>
<div class="StaffBlock StaffName">
<a href="/listing-agent-staff/will-smith">Will Smith</a>
</div>

値を挿入したいドロップダウンメニュー:

<label for="CAT_Custom_231994">Listing Contact</label>
<select name="CAT_Custom_231994" id="CAT_Custom_231994" class="cat_dropdown">
<option value="">-- Please select --</option>
<option value="/listing-agent-staff/barack-obama">Barack Obama</option>
<option value="/listing-agent-staff/bill-clinton">Bill Clinton</option>
<option value="/listing-agent-staff/will-smith">Will Smith</option>
</select>

最初の部分は自動的に生成されるため、レコードの数は変化することに注意してください。2 番目の部分のオプションの数はそれに対応する必要があります。

4

3 に答える 3

3

これはそれを行う必要があります:

$(".StaffBlock.StaffName a").each(function() {
    $(".cat_dropdown").append($("<option/>", {
        value: $(this).attr("href"),
        text: $(this).text()
    }));
});​

デモを参照してください。

于 2012-08-22T13:24:34.507 に答える
0

...-Containers の周りに -Container はありますか? はいの場合は、var のように簡単に繰り返すことができます

$('#id_of_main_container").children().each(function (e) { $(this).find('a').attr('href'); }

html() を使用すると、href-Values を使用してタグの配列を簡単に構築し、カスタム ツリーを構築できます。

于 2012-08-22T13:25:04.030 に答える
0

そのようなものはうまくいくはずです:

$(document).ready(function() {
    var select = $('<select name="CAT_Custom_231994" id="CAT_Custom_231994" class="cat_dropdown"><option value="">-- Please select --</option></select>');
    $('div.StaffBlock.StaffName a').each(function() {
        select.append('<option value="'+ $(this).attr('href') +'">'+ $(this).text() +'</option>');
    });
    $('div.StaffBlock.StaffName').last().after(select).after('<label for="CAT_Custom_231994">Listing Contact :</label>');
});​

ここにJSFiddleがあります

于 2012-08-22T13:29:01.707 に答える