2015-06-06 130 views
-2

我需要檢查一個輸入元素是否值(用戶到框中鍵入)從檢查一個輸入元素值是否包含特定字符串

返回
$("#emailInput").css("value") 

包含特定字符串。

我曾嘗試在谷歌上看到的各種方法,但都沒有工作。

的HTML:

<form class="form-horizontal" role="form"> 
<div id="emailBorder"> 
    <label id="emailStyle">Email address:</label> 
    <div id="emailInputStyle"> 
     <input class="form-control" id="emailInput" type="text"> 
    <span id="emailGlyphicon"></span> 
    </div> 
</div> 
<div class="form-group"> 
    <label id="contentStyle">Content:</label> 
    <div id="contentInputStyle"> 
     <textarea class="form-control" rows="5" id="contentInput"></textarea> 
    </div> 
</div> 
<button type="submit" id="sendStyle" class="btn btn-default">Send</button> 
</form> 

JavaScript的(我嘗試):

$("#emailInput").change(function() { 
    if ($("#emailInput").css("value").contains("@") && $("#emailInput").css("value").contains(".")) { 
     // do something 
    } else { 
     // do something else 
    } 
}); 
+1

不要忘記,以紀念一個答案,接受指導這個帖子 – AmmarCSE

+0

致謝未來的讀者!我做了,但意外地雙擊它,感謝提醒! –

+1

謝謝你shawn :) – AmmarCSE

回答

1

相反的css(),使用val()。此外,而不是使用因爲indexOf()作品 jQuery的DOM對象,而不是字符串

$("#emailInput").change(function() { 
 
    if ($("#emailInput").val().indexOf("@") > -1 && $("#emailInput").val().indexOf(".") > -1) { 
 
    console.log('It contains @ and .'); 
 
    } else { 
 
    // do something else 
 
    } 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> 
 
<form class="form-horizontal" role="form"> 
 
    <div id="emailBorder"> 
 
    <label id="emailStyle">Email address:</label> 
 
    <div id="emailInputStyle"> 
 
     <input class="form-control" id="emailInput" type="text"> 
 
     <span id="emailGlyphicon"></span> 
 
    </div> 
 
    </div> 
 
    <div class="form-group"> 
 
    <label id="contentStyle">Content:</label> 
 
    <div id="contentInputStyle"> 
 
     <textarea class="form-control" rows="5" id="contentInput"></textarea> 
 
    </div> 
 
    </div> 
 
    <button type="submit" id="sendStyle" class="btn btn-default">Send</button> 
 
</form>

css()將得到/設置元素的inline styleval()將得到/設置input類型元素的value

+0

對我來說,它不工作,當我呈現「Uncaught TypeError:$(...)。val(...)。包含不是函數」頁面時出現HTML錯誤「 –

+1

@ Shawna,看到我更新的答案,並讓我知道你是否仍然需要幫助 – AmmarCSE

+0

作品完美謝謝!我想知道爲什麼大家都在說.contains(),但intellisense找不到它。 –

1

你可以試試這個:

$("#emailInput").change(function() { 
    if ($this.contains("@") && $this.contains(".")) { 
     // do something 
    } else { 
     // do something else 
    } 
}); 
相關問題