2011-10-20 60 views
27

我正在嘗試創建一個div並給他一個類,但它不起作用。 有人可以幫我嗎?如何用類創建div

$(document).ready(function() { 
$('input[type=checkbox]').each(function() { 
    $(this).after($('<div />', { 
     className: 'test', 
     text: "a div", 
     click: function(e){ 
      e.preventDefault(); 
      alert("test") 
     }})); 
    }); 
}); 

的CSS:

.test { 
    width:200px; 
    height:200px; 
    background-color:#eeeeee; 
    } 

此刻他創造的股利,但顏色不是#eeeeee

+0

請提供HTML太... – Luke

回答

44

使用 「類」,而不是className

$('<div />', { 
     "class": 'test', 
     text: "a div", 
     click: function(e){ 
      e.preventDefault(); 
      alert("test") 
     }}) 
+3

這在IE中起作用,因爲你使類成爲String文字。 –

+2

謝謝,非常有用!但是這裏的文檔在哪裏?我無法在任何地方找到它 –

2

嘗試class代替className

+0

我有嘗試,但它dosnt工作!? – fteinz

+0

適合我。 http://jsfiddle.net/mpaW4/ –

+0

我坐在一個ie7瀏覽器是否有可能f .... ie是合理的。 – fteinz

6
$(document).ready(function() { 
$('input[type=checkbox]').each(function() { 
    $(this).after($('<div />', { 
     class: 'test', 
     text: "a div", 
     click: function(e){ 
      e.preventDefault(); 
      alert("test") 
     }})); 
    }); 
}); 

http://jsfiddle.net/yF9pA/1/

+0

我已經嘗試過,但它dosnt爲我工作。有可能IE 7是合理的。 – fteinz

+0

試着看看corneliu的答案,它使得class屬性成爲一個字符串文字,它應該解決ie問題。 –

+0

更好用引號 - 'class':'test'。 becouse類是一些IE版本中的預留字。 – Levsha

3
$('input[type=checkbox]').each(function() { 

$(this).after('<div></div>').addClass('test') 
    .filter('div').html('a div') 
.click(function() { 
    alert('Handler for .click() called.'); 
}).end() 
.appendTo('this'); 

}); 

應該工作:)

4
$('<div>', { 'class': 'your_class' }) 
       .load('HTML Structure', CallBackFunction()) 
       .appendTo(document.body);