2014-03-26 72 views
0

我正在編寫一個輸入網站,並且想突出顯示空白字段。我想檢查if語句是否爲空,然後添加突出顯示它們的類。在if語句中添加類

我的代碼:

JS:

var hi = function() 
{ 
    if(document.getElementById('input1').value==="") 
    { 
     $('#input1').addClass('hi'); 
    }; 
}); 

我把它做成了功能,這樣我就可以把它在HTML文件中。

HTML:

<input type="text" name="firstname" class="ip" id="input1" placeholder="firstname"> 

調用JS:

<input type="button" onclick="dcc(); pwc(); hi();" value="Submit" id="button"> 

不同的文件(JS和HTML鏈接和工作)。

CSS:

.hi { 
    border-color: red; 
    border-width: 0.01em; 
    margin-right: 15em; 
    margin-top: 1.05em; 
    float: right; 
} 

我的問題是:在點擊按鈕沒有反應,顯示出了另外兩個函數(警報告知所選擇的PW太短用戶),但是當我掛喜功能,他們停止工作... 任何幫助將不勝感激!如果我描述的東西太模糊,請問,我會盡力澄清!

+0

一個的jsfiddle重現問題將幫助我們解決它 – SomeKittens

+0

經常檢查你的JavaScript錯誤控制檯。如果沒有錯誤,你可以在你的'hi'函數中放入'console.log'語句來清楚地說明它正在做什麼。(或者,您可以使用瀏覽器的調試工具。) –

+0

@JeremyJStarcher感謝您的建議!我到底需要放置console.log語句? – user3466038

回答

2

你有一個語法錯誤hi

}); 

^刪除最後一個括號。

將來,打開瀏覽器的控制檯並檢查這樣的錯誤 - 它使調試更容易。

JSFiddle

或者,您可以使用此事件處理程序:

$('#button').click(function() { 
    console.log(document.getElementById('input1').value); 
    if (document.getElementById('input1').value === "") { 
     $('#input1').addClass('hi'); 
    }; 
}); 
+0

感謝您的快速回答!我很新,學習:D我知道螢火蟲是一個插件,但是它以相似的方式使用嗎? – user3466038

+0

@ user3466038是的! Firefox有一個基本的控制檯,以及一些幫助調試的優秀插件。如果我回答了您的問題,請不要忘記加入並接受! – SomeKittens

+0

現在的問題是,我的警報功能正在工作,但輸入字段沒有突出顯示,即使它仍然是空的...可能是一個問題,在HTML文件中調用函數? – user3466038

1

它看起來你在你的JS有一個語法錯誤。

var hi = function() { // cleaner to have the bracket here 
    if(document.getElementById('input1').value==="") { 
     $('#input1').addClass('hi'); 
    } // no semicolon 
}; // no parenthesis 

此外,而不是使用document.getElementById('input1').value,使用jQuery,因爲你有它! $('#input1').val()

+0

他爲什麼要用jQuery? – hanleyhansen

+0

因爲他已經在使用它。 – Scimonster

+0

@hanleyhansen,他並不是「必須」,但如果他已經引用了jQuery,那麼將它與 - 在這個意義上說是冗餘的本地代碼混合在一起是一種壞習慣。 –

-1

您也可以嘗試像,

function hi() 
{ 
    if(document.getElementById('input1').value==="") 
    { 
     $('#input1').addClass('hi'); 
    } 
} 
+0

這完全沒有關係,並且你甚至在那裏留下了語法錯誤 –

0

每任擇議定書的要求 -

這是你可以把console.log語句跟蹤發生了什麼的地方。

var hi = function() 
{ 
    console.log("'Hi' - Entering function"); 
    if(document.getElementById('input1').value==="") 
    { 
     console.log("'Hi' - Condition true - doing addClass"); 
     $('#input1').addClass('hi'); 
    }; 
    console.log("'Hi' - Leaving function"); 
} 

現在,這麼說,我在現實中,我做的事情更像是:

var hi = function() 
{ 
    console.log("'Hi1"); 
    if(document.getElementById('input1').value==="") 
    { 
     console.log("'Hi2"); 
     $('#input1').addClass('hi'); 
    }; 
    console.log("'Hi3"); 
} 
+0

非常感謝真的很感謝! – user3466038