这是在jQuery中传递两个id的正确方法吗?
我遇到了以下问题,如图所示。
域名注册:不显示输入框。
域名转移:仅显示一个输入框。
图片:
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();
}
});
});
答案 0 :(得分:4)
这不完全正确:
$("selector1", "selector2")
正在selector1
内搜索selector2
。它基本上等同于$("selector2").find("selector1")
。你似乎只想要两个独立的选择器。请改用逗号选择器。.toggle(bool)
来消除if
和show
/ hide
。$("#domainToBeReged, #domainToBeReged0").toggle($(this).val() === "yes");
答案 1 :(得分:1)
不,你的jquery必须是:
$('#domainToBeReged,#domainToBeReged0');