2012-07-01 26 views
0

正常工作,這工作:如果用兩個大括號的條件是不是在jQuery的

if($('div.login-part').is(':empty')) 
     $('div.login-part').append('<p>Login</p>'); 

但是,這並不:

if($('div.login-part').is(':empty')) 
{ 
     $('div.login-part').append('<p>Login</p>'); 
      $('div.login-part').append('<p>Welcome!</p>'); 
      $('div.login-part').append('<p>What is your name?</p>'); 
} 

我在做什麼錯?

+0

這是一個JavaScript問題。 jQuery不是一門語言,而是一個圖書館。 –

+0

我在想它與append()有關,它是jQuery庫的一個方法。 – johnnyb3000

+1

它無關,語法正確。無論錯在哪裏,都不在這些線下,那麼猜測就是錯誤的。不要猜測,你應該調試 – Alexander

回答

2

工作演示http://jsfiddle.net/avSDa/10/

請檢查你的代碼收盤報價;因爲我知道,從以前的這個問題的背景早日答覆:)

演示應該幫助你,

希望這有助於歡呼

代碼

// FOR REGISTRATION 
$('span.logreg.reg').click(function() { 

    if ($('div.login-part').is(':empty')) { 
     $('div.login-part').append('<p>Login</p>'); 
     $('div.login-part').append('<p>Welcome!</p>'); 
     $('div.login-part').append('<p>What is your name?</p>'); 
    } 
}); 
+0

哪個報價沒有關閉? – Eric

+0

@Eric我知道導致這個問題的上一個問題,因此我有一個演示以及':)' –

+0

所以OP代碼的問題有點他們沒有給我們? – Eric

5

這應該很好地工作。你可以,但是,讓你的代碼通過不運行選擇多次更有效率:

var login = $('div.login-part') 
if(login.is(':empty')) { 
    login.append('<p>Login</p>'); 
    login.append('<p>Welcome!</p>'); 
    login.append('<p>What is your name?</p>'); 
} 

你甚至可以減少到:

$('div.login-part:empty') 
    .append('<p>Login</p>') 
    .append('<p>Welcome!</p>') 
    .append('<p>What is your name?</p>'); 

甚至:

$('div.login-part:empty').append(
    '<p>Login</p>', 
    '<p>Welcome!</p>', 
    '<p>What is your name?</p>' 
); 
+0

+1這個答案,因爲這也節省了資源。始終將您的選擇器安全地變爲變量以提高腳本效率 – Sam

+0

@Sam:或者在多個語句中使用選擇因素 - 鏈接所有事物。 – Eric

相關問題