2016-11-17 163 views
-4

下面是我的代碼,用於確定某個字符是否爲元音。但是當我運行它時,它不會輸出真或假。如果是元音,則返回true,否則返回false

有人能幫我看看我做錯了什麼嗎?

var vowel = function(str) { 
 
    var matches = str.match(/[aeiou]/gi); 
 
    var count = matches ? matches.length : 0; 
 

 
    document.getElementByID('p').innerHTML = "'" + str + "contains" + count + "vowel(s)"; 
 

 
    return false; 
 
} 
 

 
vowel(str);
<form> 
 
    <input type="text" name='t1'> 
 
    <input type='submit' value="SUBMIT" onclick='return vowel(this.form.t1.v'> 
 
    <div id="p"></div> 
 
</form>

+1

是在調用'元音右括號()'還缺少實際代碼? –

+0

你調用'元音(str);',但是'str'定義在哪裏? – Gavin

+0

'str'是未定義的,\ *我猜\ * – Hydro

回答

0

而不是document.getElementByID嘗試document.getElementById

+0

我正在嘗試所有問題,但仍然無法正常工作。 –

0

你有幾個問題的代碼。

1- getElementByID應該是getElementById

2 - 您沒有關閉支架的函數調用vowel(this.form.t1.v

3- t1.v不是屬性。你的意思是使用t1.value

var vowel = function(str) { 
 
    var matches = str.match(/[aeiou]/gi); 
 
    var count = matches ? matches.length : 0; 
 

 
    document.getElementById('p').innerHTML = "'" + str + "' contains " + count + " vowel(s)"; 
 

 
    return false; 
 
}
<form> 
 
    <input type="text" name="t1" /> 
 
    <input type='submit' value="SUBMIT" onclick='return vowel(this.form.t1.value);' /> 
 
    <div id="p"></div> 
 
</form>

相關問題