2009-12-11 73 views
0
function areaMe(area){ 
        var barea = $('#barea').val(); 
        if(barea.indexOf(area)!=-1){ 
         barea=barea.replace(area, ""); // remove 
        }else{ 
         barea+=area; // inlcui 
        } 
        $('#barea').val(barea); 
       } 

如果#barea輸入隱藏它不工作...jQuery的改變隱藏字段

+1

隱藏如何?正如'type = hidden'?或'顯示:無'?或'可見度:隱藏'? – 2009-12-11 22:12:19

+0

你怎麼看到「隱藏」的價值? Firebug? – ram 2009-12-11 22:14:19

+0

其設置爲'display:none' – 2009-12-11 22:17:02

回答

3

的價值對於一個隱藏的輸入我總是用

var barea = $('#barea').attr('value'); 

$('#barea').attr('value',barea); 

不VAL( )。我從來沒有運氣以任何其他方式改變input type=hidden的價值。如果barea不是input type=hidden,那麼你需要包含它的html。請注意,它必須是某種類型的輸入,因爲val()僅適用於輸入,選擇和textareas。

+0

沒錯。我已將輸入更改爲「隱藏」並刪除了「display:none」,並且它工作正常。 – 2009-12-11 22:21:33

+0

這很奇怪。我有代碼,我已經能夠測試和更改隱藏輸入的值,沒有問題。 – CAbbott 2009-12-11 22:23:43

+0

@CAbbott我也是。去搞清楚... – 2009-12-11 22:46:54

0

您需要提供更多信息。我一直可以在隱藏的輸入中使用val()(雖然我使用「disply:none」來測試類型=「隱藏」的意義,他們也工作)。我甚至剛剛測試過一個,並且確實可以同時使用val()的「get」和「set」形式。所以儘管.attr(「value」)可能會起作用,但它確實不需要。能否請你提供:

A)這兩種形式中的哪一種對你來說是失敗的(「get」或「set」形式)?

B)定義你的隱藏輸入的HTML?