首页 > 解决方案 > 我有一个不允许我通过它传递参数的 eventListener

问题描述

我有一个不允许我通过它传递参数的 eventListener。我想通过 addTextBox 函数传递参数。我尝试使用 bind 函数传递它,但这也不起作用。代码如下:

var jobSelect = document.getElementById("ctl01_TemplateBody_WebPartManager1_gwpciMyAccount_ciMyAccount_Affiliate_panelEditor_Demographics___JOB_TITLE");
    var jobBox = document.getElementById("ctl01_TemplateBody_WebPartManager1_gwpciMyAccount_ciMyAccount_Affiliate_panelEditor_Demographics___OTHER_JOB_TITLE");
    var jobLabel = jobBox.parentElement.previousSibling;

    jobSelect.addEventListener("change", addTextBox.bind(jobSelect,jobBox,jobLabel), false);

    function hideTextBox(){
        if(jobSelect)
        {
            if(jobSelect.value != "ZZ"){
                jobBox.style.visibility = "hidden";
                jobLabel.style.visibility = "hidden";
                jobBox.style.position = "absolute";
                jobLabel.style.position = "absolute";
            }
        }
    }

    function addTextBox(x,y,z){
        if(x){
            if(this.value == "ZZ"){
                y.style.visibility = "visible";
                z.style.visibility = "visible";
                y.style.position = "";
                z.style.position = "";
            }
            else{
                hideTextBox();
            }
        }
    }

                hideTextBox();

标签: javascriptfunctionparameters

解决方案


推荐阅读