Javascript 从文本框中获取值并使用带按钮的函数
我有一个文本框中的字符串,然后用一个按钮,我想显示文本框中最长的字符串,并在另一个标签或文本框中显示结果最长的单词 为此,我尝试了以下代码:Javascript 从文本框中获取值并使用带按钮的函数,javascript,html,Javascript,Html,我有一个文本框中的字符串,然后用一个按钮,我想显示文本框中最长的字符串,并在另一个标签或文本框中显示结果最长的单词 为此,我尝试了以下代码: <html> <head> <title>Testing</title> <script type="text/javascript"> function LongestWord() { var text = document.getElem
<html>
<head>
<title>Testing</title>
<script type="text/javascript">
function LongestWord() {
var text = document.getElementsById("txt1").value;
var str = text.split(" ");
var longest = 0;
var word = null;
for (var i = 0; i < str.length; i++) {
if (longest < str[i].length) {
longest = str[i].length;
word = str[i];
}
}
document.getElementById("txt2").value = word;
};
</script>
</head>
<body>
<form>
Type your string:<br>
<input type="text" name="textBox1" id="txt1" /><br><p>
<input type="button" id="btn1" value="Find longest word in your string" onclick="LongestWord();" /><p>
Longest word is;<br>
<input type="text" name="textBox2" id="txt2"><br>
</form>
</body>
</html>
当我点击按钮时,即使我在第一个文本框中输入了一个字符串,代码也不起作用。你能告诉我怎么办吗
此外,我还会像从.js文件中获取函数一样对代码进行求值。尝试以下操作:
var firstButton = document.getElementById("btn1");
your function
firstButton.addEventListener('click', function(){
your_function_name()
})
附言。
在这一行
document.getElementById("txt2").innerHTML = word
将.innerHTML更改为.value将代码放在正文结尾附近。在代码段中做了一些更正,并添加了注释 函数LongestWordstring{ //使用getElementsByName时使用索引。 //修剪以删除空白 var text=document.getElementsByNametextBox1[0].value.trim; //未定义sen,请替换为文本 var str=text.split; //按每个字符串的长度对数组进行排序 var grtString=str.sortfunctiona,b{ 返回a.length-b.length } //索引0将显示第一个元素 //如果两个字符串的长度相同,那么它将给出第一个字符串 document.getElementByIdtxt2.value=grtString[0]; }; 键入您的字符串: 最长的单词是;
代码中有很多错误,但首要问题是getElementsByName返回节点列表,而不是元素 我试着只更新你的而不重写它。使用更好的变量名会有很大帮助 document.getElementByIdbtn1.onclick=LongestWord; 函数最长字{ var text=document.getElementByIdtxt1.value; var str=text.split; var=0; var-word=null; 对于变量i=0;i