Javascript HTML变量表单入口

javascript html variable form entry

本文关键字:入口 表单 变量 HTML Javascript      更新时间:2023-09-26

我有一个html表单选择选项下拉选项:运输,物流单元TRANSFLO解决方案事业部西区事业部其他

我有以下javascript,它根据上述选择将值输入到Job Title变量中。

var data = {
    "Transportation & Logistics Unit": [
        'Transportation &',
        'Logistics Unit'
    ],
    "TRANSFLO Solutions Business Unit": [
        'TRANSFLO Solutions',
        'Business Unit'
    ],
    "Western Business Unit": [
        'Western Business Unit',
        ''
    ],
    "Other": [
        document.getElementById('t1_t2_c_p_variableTextForm_pageTpl_v06CompanyDivision_other').value,
        ''
    ],
    "Western Canada Petroleum Solutions": [
        'Western Canada Petroleum Solutions',
        ''
    ]
}

函数是:

function SetJobTitle() {
    var choice = spec['v06CompanyDivision'].selectedText();
    spec['v02JobTitle1'].value = data[choice][0];
    spec['v03JobTitle2'].value = data[choice][1];
}

当用户选择"option"时,会出现一个文本输入框,以便输入文本。输入框的元素id为"t1_t2_c_p_variableTextForm_pageTpl_v06CompanyDivision_other"。

上面的var数据值"Other"不起作用,所以我想知道你是否能告诉我缺少什么。

感谢编辑:

我能得到一些spec['v02JobTitle1']。

function SetJobTitle() {
    var choice == spec['v06CompanyDivision'].selectedText();
    if (data[choice][0] = 'Other') {
        spec['v02JobTitle1'].value =       document.getElementById('t1_t2_c_p_variableTextForm_pageTpl_v06CompanyDivision_other').value;
    } else {
        spec['v02JobTitle1'].value = data[choice][0];
        spec['v03JobTitle2'].value = data[choice][1];
    }
}

然而,这似乎有点尴尬,因为它是由变化的下拉菜单触发的。如果我只是编辑输入框中的值它不会改变。在这种情况下我能做些什么吗?

你应该在选择后从输入框中获取值,或者听取它的变化并处理它的

所以你的代码
document.getElementById('t1_t2_c_p_variableTextForm_pageTpl_v06CompanyDivision_other').value

应该在每次更改输入框或任何其他事件触发和接收值时调用

将"data"中的"Other"项更改为""Other": [function(){return document.getElementById('t1_t2_c_p_variableTextForm_pageTpl_v06CompanyDivision_other').value},'']"。

function SetJobTitle() {
    var choice = spec['v06CompanyDivision'].selectedText();
    if(choice === 'Other')
        spec['v02JobTitle1'].value = data[choice][0]();
    else
        spec['v02JobTitle1'].value = data[choice][0];
    spec['v03JobTitle2'].value = data[choice][1];
}

这应该对你有帮助。这是一个令人讨厌的代码