我有一个功能来检查在文本输入中输入的单词是否是回文:
function Palindrome() {
var revStr = "";
var str = document.getElementById("str").value;
var i = str.length;
for (var j = i; j >= 0; j--) {
revStr = revStr + str.charAt(j);
}
if (str == revStr) {
alert(str + " is a palindrome");
} else {
alert(str + " is not a palindrome");
}
}
<form>
Enter a String or Number:
<input type="text" id="str" name="string" />
<br />
<input type="submit" value="Check" onclick="Palindrome();" />
</form>
我希望提示用户输入一个单词,而不是在文本输入中输入单词,所以我改了
var str = document.getElementById("str").value;
到
var str = prompt("Enter a string or number:")
但提示不会触发 为什么我没有被提示一个字?
答案 0 :(得分:1)
您需要在脚本末尾调用Palindrome()
。按照目前的情况,Palindrome
仅在您点击submit
:
<script type="text/javascript">
function Palindrome() {
var revStr = "";
var str = prompt("Enter a string or number:")
var i = str.length;
for(var j=i; j>=0; j--) {
revStr = revStr+str.charAt(j);
}
if(str == revStr) {
alert(str+" is a palindrome");
} else {
alert(str+" is not a palindrome");
}
}
Palindrome()
</script>
答案 1 :(得分:0)
如果您正在使用提示,则不需要表单,也有快速递归方式来查找回文(虽然效率不如Andy引用的那样)。我将它添加到您的(工作版本)仅供参考。 试试这个..
static