2012-03-25 17 views
0

我有這個代碼Math.min(someVariable, 500))我也有一些div我隱藏了(display:none)我的問題是:我如何使用上面的代碼與Jquery事件'show'相關?我知道這個活動是如何運作的,但我不知道如何把兩個和兩個放在一起。顯示一定數量的div

所以'show'事件應該是show 'someVariable' or 500的divs。 someVariable是一個數字(從0到10億)

+0

你能否也請提供一個這樣的div的例子標記?每個數字都是特定div的代表嗎? – Daxcode 2012-03-25 18:15:17

+0

@Daxcode只是一個簡單的div'

bla
'沒有什麼特別的事情與div – Youss 2012-03-25 18:18:03

+0

@Youss你說的表演事件?你的意思是演出方法?你想要做些什麼像$(「#myDiv」)show()並將myDiv中的文本更改爲500或someVariable? – 2012-03-25 18:22:40

回答

1

我需要更多的信息來解決你的具體例子,但讓我試着填寫一些更具體的解決方案的細節。

我打算假設你有一堆帶有id的div:「fieldDiv1」,「fieldDiv2」等,它們都可能被隱藏。並且你有一堆包含'someVariable'數字的字段,並且這些字段具有像「fieldValue1」,「fieldValue2」等id。所以,在JavaScript中,您可以調用以下函數來解決您的問題:

setVisibility : function() { 
    for(var i = 1; document.getElementById("fieldDiv" + i) != null; i++) { 
     if(!$("#fieldDiv" + i).is(':hidden') && document.getElementById("fieldValue" + i).value < 500) { 
      $("#fieldDiv" + i).hide(); 
     else if($("#fieldDiv" + i).is(':hidden') && document.getElementById("fieldValue" + i).value >= 500){ 
      $("#fieldDiv" + i).show(); 
     } 
    } 
}, 

我知道我不得不承擔很多,但我希望這有助於。

+0

嗨,感謝您的努力。但我沒有看到一些變化..我沒有太多的輸入,只有一個可以發送查詢,然後腳本將發回總數wcich與someVariable呈現。希望這使得sence。 – Youss 2012-03-25 18:37:16

+0

我想我可以與此合作,謝謝 – Youss 2012-03-25 18:51:53

1

您可以使用:lt選擇器顯示前500(基於零)。如果有低於500會顯示所有,如果有更多的將只顯示500

http://api.jquery.com/lt-selector/

 $('.someClass:lt(500)').show(); 

編輯:要使用變量需要連接變量到選擇的字符串:

$('.someClass:lt('+Math.min(someVariable, 500)+')').show(); 

slice(startIndex,endIndex)根據要顯示的索引值進行過濾的方法

http://api.jquery.com/slice/

+0

我知道如何做到這一點,這不是問題。問題是,如果someVariable正好是428,我想顯示428個div。這就是爲什麼我把數學。那麼我可以這樣做嗎? '('。'page2:lt(Math.min(someVariable,500))')。show();'(這不適用於我,也許現在你明白我的問題了) – Youss 2012-03-25 18:32:38

+0

OK ..我添加了一個編輯版本如何連接你的變量 – charlietfl 2012-03-25 18:39:08

+0

謝謝,另一個答案更接近我正在尋找的答案 – Youss 2012-03-25 18:53:45