在javascript中更改另一个输入时更改输入
很难定义标题^^ 我想输入字段。例如:一个输入颜色(字符串),另一个输入颜色代码(varchar) 像这样:|绿色| | 657EC9 |(只是随机色码) 我不想学习如何查找颜色代码,而是想学习如何将一个值或变量与另一个匹配。这只是一个例子 我想知道的是,当我填写第二个字段时,如何以最佳方式自动生成其中一个字段。当我在第一个字段中键入“绿色”时,我希望代码自动出现在第二个字段中,反之亦然。我只想做一些颜色 我对PHP、HTML和Javascript非常陌生,可能需要一些关于如何处理问题的好建议在javascript中更改另一个输入时更改输入,javascript,html,mysql,Javascript,Html,Mysql,很难定义标题^^ 我想输入字段。例如:一个输入颜色(字符串),另一个输入颜色代码(varchar) 像这样:|绿色| | 657EC9 |(只是随机色码) 我不想学习如何查找颜色代码,而是想学习如何将一个值或变量与另一个匹配。这只是一个例子 我想知道的是,当我填写第二个字段时,如何以最佳方式自动生成其中一个字段。当我在第一个字段中键入“绿色”时,我希望代码自动出现在第二个字段中,反之亦然。我只想做一些颜色 我对PHP、HTML和Javascript非常陌生,可能需要一些关于如何处理问题的好建议
谢谢我倾向于将值映射到对象文字,因此:
var colors = {
Green:'#657EC9',
Red:'#00ffff'
}
现在,您可以使用颜色[fieldInputVal]
获取您的值,其中fieldInputVal可能是“绿色”或“红色”,当然您必须测试是否确实存在属性。对象文字是我很少在JS中使用switch语句的主要原因
至于事件JS,我将使用JQuery,而不是解释attachEvent与addEventListener,如果您支持IE8或以下版本,这是必要的。如果您想自己对此进行规范化并跳过JQuery,请在quirksmode.org上查找“addEvent竞赛”
$('.input_one').change( function(){
//note: only fires after the field loses focus - you tab out or focus another field
var inputVal = $(this).val();
if(colors[inputVal] !== undefined){
$('.input_two').val(colors[inputVal]);
}
} );
注意:我没有测试这段代码的语法错误
如果您想更灵活地接受“green”或“green”,我会在使用第一个字符进行查找之前将其大写。要查找每个添加的字符,您必须查找keyup或keydown事件(我更喜欢keyup,以避免在有人按住键时中断浏览器)。我倾向于将值映射到对象文字,因此:
var colors = {
Green:'#657EC9',
Red:'#00ffff'
}
现在,您可以使用颜色[fieldInputVal]
获取您的值,其中fieldInputVal可能是“绿色”或“红色”,当然您必须测试是否确实存在属性。对象文字是我很少在JS中使用switch语句的主要原因
至于事件JS,我将使用JQuery,而不是解释attachEvent与addEventListener,如果您支持IE8或以下版本,这是必要的。如果您想自己对此进行规范化并跳过JQuery,请在quirksmode.org上查找“addEvent竞赛”
$('.input_one').change( function(){
//note: only fires after the field loses focus - you tab out or focus another field
var inputVal = $(this).val();
if(colors[inputVal] !== undefined){
$('.input_two').val(colors[inputVal]);
}
} );
注意:我没有测试这段代码的语法错误
如果您想更灵活地接受“green”或“green”,我会在使用第一个字符进行查找之前将其大写。要查找每个添加的字符,您必须查找keyup或keydown事件(我更喜欢keyup,以避免在有人按下键时中断浏览器)。“如果您想更灵活,接受“绿色”或“绿色”,您可以在比较时将每个字母大写,并将地图键大写,然后,您将匹配从绿色到绿色的所有内容(在打字错误的情况下)“如果您想更灵活地接受“绿色”或“绿色”,您可以在比较时将每个字母大写,并将地图键也大写,然后您将匹配从绿色到绿色的所有内容(在打字错误的情况下)