我想检查输入(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>
答案 0 :(得分:1)
还有其他方法,但这应该让你去:
$(function() {
if (($("#inputCompanyName").val() || "") != "")
{
$("#Zakelijk").prop("checked", true)
} else {
$("#Particulier").prop("checked", true)
}
});
这是基于你的html输入名称=&#39; companyname&#39;还有id&#39; inputCompanyName&#39;并将清除其他无线电,因为它们具有相同的name=
修改工作jsfiddle:https://jsfiddle.net/76x42os0/4
更改代码框中的输入值(左上角),然后点击“运行”。
更新:更新了指示的jquery版本3.1.0的小提琴,发现较新版本的jquery 需要 id =匹配#,而在匹配名称=
之前答案 1 :(得分:0)
如果要在更改输入时进行检查,可以执行
$("input[name='companyname']").change(function(){
var hasValue = $(this).val() === "";
$("#Zakelijk").prop("checked", hasValue);
$("#Particulier").prop("checked", !hasValue);
})
您可以优化代码,但这更具可读性。
答案 2 :(得分:0)
以下是您所关注的一个工作示例(虽然没有考虑您的HTML ID /布局,但您只需更改其中的ID)。
FROM java:jre-alpine
WORKDIR /target
ADD /target/test.jar test.jar
RUN sh -c 'touch /test.jar'
ENTRYPOINT ["java","-Xmx512m","/target/test.jar"]
https://jsfiddle.net/bm18hmLa/3/
它挂钩到已更改的事件,因此每次更改文本框值时都会发生这种情况。
经过深思熟虑:
更改
$("#text-box").on('change', function(){
if($(this).val() != ""){
$('#rd1').prop("checked", true)
}else{
$('#rd2').prop("checked", true)
}
});
到
$("#text-box").on('change', function(){
使其在响应性方面有点“更好”。
https://jsfiddle.net/bm18hmLa/5/
这是一个带有你的ID名称的版本。
答案 3 :(得分:0)
如果您需要Javascript中的解决方案
if(document.getElementById("inputCompanyName").value !== ""){
document.getElementById("Zakelijk").checked = true;
document.getElementById("Particulier").checked = false;
}
else{
document.getElementById("Particulier").checked = true;
document.getElementById("Zakelijk").checked = false;
}