1

これはjQueryで2つのIDを渡す正しい方法ですか?

画像に見られるように、私は次の問題を抱えています。

ドメイン登録:入力ボックスは表示されません。

ドメイン移管:1つの入力ボックスのみが表示されます。

画像:

ここに画像の説明を入力してください

CSS:

#domainToBeReged, #domainToBeReged0, #domainToBeTransfered{
    display:none;
}

HTML:

<label for="domainRequired">Domain Registration: </label>
                    <select name="domainRequired" id="domainRequired">
                        <option value="pleaseSelect">Please Select</option>
                        <option value="yes">Yes</option>
                        <option value="no">No</option>
                    </select>
        <div id="domainToBeReged">
            <label for="domainToBeReged">Domain One:</label><input name="domainToBeReged" id="domainToBeReged" type="text" placeholder="http://www." />
            <label for="domainToBeReged0">Domain Two:</label><input name="domainToBeReged0" id="domainToBeReged0" type="text" placeholder="http://www." />

        </div>
        <label for="domainTransfer">Domain Transfer: </label>
                    <select name="domainTransfer" id="domainTransfer">
                        <option value="pleaseSelect">Please Select</option>
                        <option value="yes">Yes</option>
                        <option value="no">No</option>
                    </select>
        <div id="domainToBeTransfered">
                    <label for="domainToBeTransfered">Domain:</label><input name="domainToBeTransfered" id="domainToBeTransfered" type="text" placeholder="http://www." />
                  <label for="domainToBeTransfered0">Domain:</label><input name="domainToBeTransfered0" id="domainToBeTransfered0" type="text" placeholder="http://www." />
        </div>
        <label for="currentHosting">Current Hosting: </label>
        <textarea cols="10" rows="10" name="currentHosting" id="currentHosting"></textarea>
        <input type="submit" class="nextButton" value="Next" />
        </fieldset>
    </form>

jQuery:

    jQuery(document).ready(function() { 
$('select[name="domainRequired"]').change(function() {
            var $domain = $('#domainToBeReged','#domainToBeReged0');
                if ($(this).val() == 'yes') {
                    $domain.show();
                } else {
                    $domain.hide(); 
        }
            });             


        $('select[name="domainTransfer"]').change(function() {
            var $domain = $('#domainToBeTransfered');
                if ($(this).val() == 'yes') {
                    $domain.show();
                } else {
                    $domain.hide(); 
        }
            });             

    });
4

2 に答える 2

4

完全には正しくありません。

  • $("selector1", "selector2")selector1内部を検索していselector2ます。基本的にはと同等$("selector2").find("selector1")です。2つの独立したセレクターが必要なようです。代わりにコンマセレクターを使用してください。
  • および/.toggle(bool)を削除するために使用できます。ifshowhide
$("#domainToBeReged, #domainToBeReged0").toggle($(this).val() === "yes");
于 2012-04-06T21:30:03.737 に答える
1

jqueryは次のようにする必要はありません:

$('#domainToBeReged,#domainToBeReged0');
于 2012-04-06T21:29:55.407 に答える