亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

更改本地函數以便可以在全局范圍內使用

更改本地函數以便可以在全局范圍內使用

智慧大石 2023-09-18 17:17:21
我有一個測試功能,當前可以在輸入信用卡號時對其進行格式化和測試我需要這樣做,而不是使用document.getElementById("cc")我可以使用傳遞給函數的變量,該變量等于文本框的 id,并且仍然會更改文本框中的內容<script>Function ReplacingImage() {    var str = document.getElementById("cc").value;    var strTest = str.charAt(0);    switch(strTest) {            case "3":                    document.getElementById("x").src="/common/cc-images/amex.png"                    break;            case "4":                    document.getElementById("x").src="/common/cc-images/visa.png"                    break;            case "5":                    document.getElementById("x").src="/common/cc-images/mastercard.png"                    break;            case "6":                    document.getElementById("x").src="/common/cc-images/discover.png"                    break;            case "":                    document.getElementById("x").src="/common/cc-images/none.png"                    break;            default:                    document.getElementById("x").src="/common/cc-images/invalid.png"                    break;    }    var strNoSpace = str;    var i;    for(i = 0; i < (strNoSpace.length / "4"); i++) {            strNoSpace = strNoSpace.replace(" ", "");    }    var lastDig = strNoSpace.substring(strNoSpace.length - 1, strNoSpace.length);    if(isNaN(lastDig)) { document.getElementById("cc").value = str.substring(0, str.length - 1);  }    if((strNoSpace.length > 16 && (strTest == "4" || strTest == "5" || strTest == "6")) || (strNoSpace.length > 15 && (strTest == "3"))) {            document.getElementById("cc").value = str.substring(0, str.length - 1);    } else if((strNoSpace.length == "15" && strTest == "3") || (strNoSpace.length == "16" && (strTest == "4" || strTest == "5" || strTest == "6"))) {            value = document.getElementById("cc").value;            if (/[^0-9-\s]+/.test(value)) {                    document.getElementById("cc").style.color = "red";
查看完整描述

1 回答

?
炎炎設計

TA貢獻1808條經驗 獲得超4個贊

function ReplacingImage(id) {

console.log(id);



    var str = document.getElementById(id).value;

    var strTest = str.charAt(0);

    console.log(str);

    switch(strTest) {

            case "3":

                    document.getElementById("x").src="/common/cc-images/amex.png"

                    break;

            case "4":

                    document.getElementById("x").src="/common/cc-images/visa.png"

                    break;

            case "5":

                    document.getElementById("x").src="/common/cc-images/mastercard.png"

                    break;

            case "6":

                    document.getElementById("x").src="/common/cc-images/discover.png"

                    break;

            case "":

                    document.getElementById("x").src="/common/cc-images/none.png"

                    break;

            default:

                    document.getElementById("x").src="/common/cc-images/invalid.png"

                    break;

    }


    var strNoSpace = str;

    var i;

    for(i = 0; i < (strNoSpace.length / "4"); i++) {

            strNoSpace = strNoSpace.replace(" ", "");

    }


    var lastDig = strNoSpace.substring(strNoSpace.length - 1, strNoSpace.length);


    if(isNaN(lastDig)) { document.getElementById(id").value = str.substring(0, str.length - 1);  }


    if((strNoSpace.length > 16 && (strTest == "4" || strTest == "5" || strTest == "6")) || (strNoSpace.length > 15 && (strTest == "3"))) {

            document.getElementById(id).value = str.substring(0, str.length - 1);

    } else if((strNoSpace.length == "15" && strTest == "3") || (strNoSpace.length == "16" && (strTest == "4" || strTest == "5" || strTest == "6"))) {

            value = document.getElementById(id").value;

            if (/[^0-9-\s]+/.test(value)) {

                    document.getElementById(id").style.color = "red";

            }



            let nCheck = 0, bEven = false;

            value = value.replace(/\D/g, "");


            for (var n = value.length - 1; n >= 0; n--) {

                    var cDigit = value.charAt(n),

                              nDigit = parseInt(cDigit, 10);


                    if (bEven && (nDigit *= 2) > 9) nDigit -= 9;


                    nCheck += nDigit;

                    bEven = !bEven;

            }


            if((nCheck % 10) != 0) {

                    document.getElementById(id").style.color = "red";

            }

            else {

                    document.getElementById(id).style.color = "green";

            }


    } else {

            document.getElementById(id).style.color = "black";

    }



    if(strNoSpace.length > 15 && (strTest == "3")) { document.getElementById(id).value = str.substring(0, str.length - 1); }


    if(!isNaN(lastDig) && strNoSpace.length != "0" && (strNoSpace.length % 

"4") == "0" && strNoSpace.length < "16" && event.keyCode != "8") {

            document.getElementById(id).value += " ";

    }

}

<input type="text" onkeyup="ReplacingImage(this.id)" title="CC of Customer" id="cc" name="cc" placeholder="###">



查看完整回答
反對 回復 2023-09-18
  • 1 回答
  • 0 關注
  • 112 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號