簡體   English   中英

選擇onchange事件觸發javascript,它會拉取數組值並替換隱藏字段的值

[英]Selection onchange event triggering javascript that pulls array value and replaces the value of a hidden field

在上一個問題問完之后,我再也沒有得到任何答復。 謝謝大家,我從上一個問題中得到了很多幫助。 我這樣做的方法是,基於選擇“有關”,它將從數組中提取鏡像索引值(電子郵件地址),並用它替換“收件人”值。 有一些選擇將提取相同的電子郵件地址。 這是我遇到的最后一個問題-使用帶有“ email#1,email#2,....”的Java腳本的測試頁在mtsherman的測試頁上工作(感謝一堆!)。 當我將實際的電子郵件添加到此數組中時,它不會將值拉到收件人值。 這可能是一個非常簡單的修復程序,但是我是新手,很沮喪! 提前致謝。

<html>
<head>
<script language="JavaScript">
document.getElementById('Concerning').onchange = function() { 
    var myArray = ["Empty", 
                   "None@none.com", 
                   "None1@none.com", 
                   "None2@none.com", 
                   "None1@none.com", 
                   "None4@none.com", 
                   "None5@none.com", 
                   "None1@none.com", 
                   "None7@none.com", 
                   "None8@none.com",
           "None9@none.com",
           "None5@none.com",
           "None8@none.com"];

    document.getElementsByName('recipient')[0].value = myArray[this.selectedIndex];
};
</script>
</head>
<body>
<form action="/cgi-bin/formmail" method="post">
<select id="Concerning">
                    <option value="Choose One">Choose One
            <option value="Benefits">Benefits
            <option value="Customer_Service">Customer Service
            <option value="Employee_Paperwork">Employee Paperwork
            <option value="Human_Resources"> Human Resources
            <option value="Open_Positions">Open Positions
            <option value="Payroll">Payroll
            <option value="Quote_Request">Quote Request
            <option value="Safety">Safety
            <option value="Technical_Support">Technical Support
            <option value="Training">Training
            <option value="Unemployment">Unemployment
            <option value="Workers_Compensation">Workers' Compensation
    </select>
<input TYPE="hidden" NAME="recipient" VALUE="">
    <input TYPE="hidden" NAME="subject" VALUE="Contact Form">
    <input TYPE="hidden" NAME="email" VALUE="postmaster@company.com">
    <input TYPE="hidden" NAME="required" VALUE="Name,Phone,Email,Concerning,Comments">
</form>
</body>
</html>

您的代碼在頁面加載之前正在運行。 您應該在JavaScript控制台中看到一個錯誤,抱怨document.getElementById('Concerning')null 使用onload處理程序來延遲代碼執行,直到頁面准備就緒:

window.onload = function () {
    document.getElementById('Concerning').onchange = function () {
        ...
    };
};

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM