我已经创建了这个javascript函数
function fillGaps()
{
var selectElement = document.snowForm.snoww;
var values = selectElement.options[selectElement.selectedIndex].innerHTML;
var words[] = values.split(" ");
var firstWord = words[0];
var secondWord = words[1];
var thirdWord = words[2];
alert(values);
document.snowForm.last.value = firstWord;
document.snowForm.first.value = secondWord;
document.snowForm.phone.value = thirdWord;
}
现在,请让我解释几件事。我有一个名为snowForm的表单。在这种形式我有一个选择元素,其选项将始终与字符串,名字 - 姓氏 - 电话号码分开。
<option value="Malkovic">John Malkovic 1514 4124</option>
<option value="Malkovic">Chris Davidson 6234 2634</option>
<option value="Malkovic">Bill Parker 3134 2124</option>
等。
所以我想说我选择其中一个选项并在onchange上我希望我的功能填充这3个输入区域
<input type="text" name="last"/>
<input type="text" name="first"/>
<input type="text" name="phone"/>
用我的功能分开的3个单词。
我的问题是,我认为它应该可以正常工作,但它实际上没有做任何事情。
任何帮助都将受到高度赞赏。特别感谢Telis。
答案 0 :(得分:1)
这不是有效的JavaScript
var words[] = values.split(" ");
应该是
var words = values.split(" ");
学习使用调试器,控制台中应该有错误消息。还有像JSLInt或JSHint这样的工具可以指出这些语法错误。
现在选项没有innerHTML
var values = selectElement.options[selectElement.selectedIndex].innerHTML;
它有文字
var values = selectElement.options[selectElement.selectedIndex].text;