2010-09-03 66 views
0

我選擇使用一些這方面的表:使用jQuery更改表中的值與來自變量的值?

$('.StatusDateTable').each(function() { 
var statusLight = $(this).find(".StatusLight").attr("src"); 
statusLight = statusLight.substring(33).slice(0,-9); 

if (statusLight == "Blue") { 
    var columns = Math.abs((start - end)-1); 
    var columnWidth = 40; 
    var marginRight = Math.abs(columnWidth * columns); 

現在我想在當前表設置保證金右=「theValueOfmarginRightHere」,這可能嗎?

我想是這樣的:

$(this).attr('margin-right=" + marginRight + "'); 

,但顯然這是行不通的。

在此先感謝。

回答

0

$(this).css('marginRight',marginRight + 'px');

0
$(this).css({marginRight:marginRight}) 
0

使用.css()

$(this).css('margin-right', marginRight); 

您可能需要在末尾添加px,不知道這一點:marginRight + 'px'

評論您的代碼行:

  • margin-right沒有一個HTML元素的屬性。這是一個CSS屬性。所以你不能使用attr()方法來設置這些屬性。
  • 看看attr()該方法需要的參數。它可以是:
    • attr(name)獲取屬性值。
    • attr(name, value)設置值。你不要必須創建一個字符串,如name=value
  • 當你做字符串連接,你必須要小心混合'"。你的確會創建字符串margin-right=" + marginRight + "(正如你可以從語法熒光筆中看到的那樣)。要連接正確的方式,你必須把單引號在正確的位置:

    'margin-right="' + marginRight + '"' 
    //   --^    --^ 
    

    `

+0

感謝您的意見 – Peter 2010-09-03 11:31:13