我想检查输入(name="companyname"
)是否有值,如果有,它应该检查单选按钮(id="Zakelijk"
)。如果它没有任何值,则应检查另一个单选按钮 (id="Particulier"
)。
查看我当前的代码:
<script type="text/javascript">
function ShowHideDiv() {
var chkYes = document.getElementById("Zakelijk");
var dvPassport1 = document.getElementById("checkzakelijk");
var dvPassport2 = document.getElementById("checkzakelijk1");
var dvPassport3 = document.getElementById("checkzakelijk2");
var display = chkYes.checked ? "block" : "none";
dvPassport1.style.display = display;
dvPassport2.style.display = display;
dvPassport3.style.display = display;
}
</script>
<div class="col-md-12 check-business">
<div class="form-group form-group-xl">
<label for="Particulier"><input type="radio" id="Particulier"checked="checked" name="checkzakelijk" onclick="ShowHideDiv()" />Particulier</label>
<label for="Zakelijk"><input type="radio" id="Zakelijk" name="checkzakelijk" onclick="ShowHideDiv()" />Bedrijf</label>
</div>
</div>
<div class="col-md-12" id="checkzakelijk" style="display:none;">
<div class="form-group">
<label for="inputCompanyName" class="control-label">{$LANG.clientareacompanyname}</label>
<input type="text" name="companyname" id="inputCompanyName" value="{$clientcompanyname}"{if in_array('companyname', $uneditablefields)} disabled="disabled"{/if} class="form-control" />
</div>
</div>
最佳答案
还有其他方法,但这应该可以帮助您:
$(function() {
if (($("#inputCompanyName").val() || "") != "")
{
$("#Zakelijk").prop("checked", true)
} else {
$("#Particulier").prop("checked", true)
}
});
这是基于您的 html,其中输入 name='companyname' 也具有 id 'inputCompanyName' 并且将清除另一个 radio ,因为它们具有相同的 name=
编辑工作jsfiddle:https://jsfiddle.net/76x42os0/4
更改代码框(左上角)中的输入值,然后单击运行。
更新:将 fiddle 更新为指示的 jquery 版本 3.1.0 并发现较新版本的 jquery 需要 id= 匹配 #,而之前它匹配 name=
关于javascript - 如果输入有值,则应检查特定的单选按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39272150/