How do I disable input field when certain select l

2019-08-28 04:31发布

How do I disable and make the input field text to hidden when certain value is selected from select list? In my code, I need to disable and make the input text to hidden when "United States" is selected from my drop down.

My HTML: JSFiddle Link

My Javascript:

document.getElementById('BillingCountryCode').onchange = function () {
    if(this.value != '840') {
        document.getElementById("BillingStateProvince").disabled = true;
        document.getElementById("BillingStateProvince").style.display="none"
    } else {
        document.getElementById("BillingStateProvince").disabled = false;
        document.getElementById("BillingStateProvince").style.display="block"
    }
}

2条回答
干净又极端
2楼-- · 2019-08-28 05:21

The problem with your fiddle is you have two elements with the same ID. You can do exactly what is already there, just change the ID on either the state dropdown or the text input. Updated code might look like this, if you simply name the text input the same with a 2:

document.getElementById('BillingCountryCode').onchange = function () {
    if(this.value != '840') {
        document.getElementById("BillingStateProvince").disabled = true;
        document.getElementById("BillingStateProvince").style.display="none";
        document.getElementById("BillingStateProvince2").disabled = false;
        document.getElementById("BillingStateProvince2").style.display="block";
    }

    else {
        document.getElementById("BillingStateProvince").disabled = false;
        document.getElementById("BillingStateProvince").style.display="block";
        document.getElementById("BillingStateProvince2").disabled = true;
        document.getElementById("BillingStateProvince2").style.display="none";
    }
}
查看更多
beautiful°
3楼-- · 2019-08-28 05:23

If i got the question , simply invert the if condition like this :

if(this.value === "840") { ... } 

here is the working fiddle : http://jsfiddle.net/antwonlee/cf4Sz/7/

查看更多
登录 后发表回答