如果输入值包含某个单词但尝试做某事但这不起作用:
var formMain = $('#MainForm :input[name="Search"]');
if ((formMain).value.indexOf('word') >= 0) {
alert('HAS THIS WORD IN IT!');
示例表单:
<form onsubmit="return OnSubmitSearchForm(event, this);" action="/searchresults.asp" id="MainForm" name="MainForm" method="post" class="search_results_section">
<input type="hidden" value="word" name="Search">
<input type="hidden" value="" name="Cat">
</form>
答案 0 :(得分:7)
您的标题提及val()
,但您实际上并未使用它。 formMain
是一个jquery对象,没有value
,您应该使用val()
。
var formMain = $('#MainForm :input[name="Search"]');
if (formMain.val().indexOf('word') >= 0) {
alert('HAS THIS WORD IN IT!');
}
另请注意,formMain
是一个误导性的变量名称,因为它不是主要形式,而是包含搜索输入的jquery对象。
答案 1 :(得分:1)
$(function(){
var formMain = $('#MainForm input[name="Search"]').val();
if (formMain.indexOf('word') >= 0) {
alert('HAS THIS WORD IN IT!');
}
});
答案 2 :(得分:0)
可能你在使用选择器时出错了,应该只使用带选择器的.val。这里有一些东西可供你查看http://jsfiddle.net/sahil20grover1988/V2dsn/3/