1

[N / A(対面インタビュー)]チェックボックスがオンになると、ドロップダウンフィールドで[対面インタビュー]を自動的に選択するスクリプトを作成しようとしています。私はここで2週間近く例を読んでいますが、正しい方向に向けることができるものを見つけることができませんでした。どんな助けでも大歓迎です。ありがとう。

これが私が一緒に仕事をしようとしてきたフィドルです

マークアップは次のとおりです。

<li id="fielditem_51926" class="field toggleField">
    <table>
        <tbody>
            <tr>
                <td style="width: auto">
                    <input type="hidden" value="false" name="client[custom][custom70]">
                    <input id="field_51926" class=" field_51926 " type="checkbox" value="true" name="client[custom][custom70]">
                    <label id="field_51926_form_label">N/A·(In Person Interview)?·</label>
                    <div id="field_51926_form_note" class="global_note"></div>
                </td>
                <td></td>
            </tr>
        </tbody>
    </table>
</li>
<li id="fielditem_50508" class="field toggleField">?
    <table>
        <tbody>
            <tr>
                <td style="width: auto">
                    <label id="field_50508_form_label" class="above">
                        Need
                        <span class="alert">&nbsp;*</span>
                    </label>
                    <div id="field_50508_form_note" class="global_note">What Are You Looking For Today?</div>
                    <div id="container-50508" class="field_container">
                        <select id="field_50508" class="required_field " name="client[module][custom23][0][option_id]">
                            <option label="(select)" value="">(select)</option>
                            <option label="Utilities" value="45398">Utilities</option>
                            <option label="Motel Voucher" value="45947">Motel?·Voucher</option>
                            <option label="Health" value="49184">Health</option>
                            <option label="General Outreach Event" value="62620">General?·Outreach?·Event</option>
                            <option label="Email" value="46046">Email</option>
                            <option label="Disaster" value="45449">In Person Interview</option>
                        </select>
                    </div>
                </td>
                <td></td>
            </tr>
        </tbody>
    </table>
</li>
4

1 に答える 1

1

それがHTMLのように見える場合は、チェックボックスがオンになっているときにjQueryを使用して目的のオプションを選択する完全なスクリプトを次に示します。

jsFiddleで動作中の基礎となるコードを参照してください。

// ==UserScript==
// @name     _Select matching option when CB checked, in poorly structured HTML
// @include  http://YOUR_SERVER.COM/YOUR_PATH/*
// @require  http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js
// ==/UserScript==

var targChkBox = $("label:contains('(In Person Interview)')").prev ("input");
targChkBox.change (function () {
    if (this.checked) {
        var matchingOption  = $("option:contains('In Person Interview')");
        var targValue       = matchingOption.prop ("value");
        var targSelect      = matchingOption.parents ("select.required_field");
        targSelect.val (targValue); //-- Select the desired option.
    }
} );


フィールド番号とID番号は可変であると想定されているため、主要な要素はテキスト(「対面インタビュー」)を介して検索されます。

HTMLは疑わしいように見えることに注意してください。forたとえば、ラベルは誤用されており、属性はありません。このコードを機能させるのが難しい場合は、実際のターゲットページにリンクしてください。

于 2012-06-27T05:35:45.163 に答える