2013-07-02 46 views
-2

我試着讓當有人按下顯示更多獲取按鈕的ID,如果ID以「Show_More_ID_」開始變得ID的數量和後箱包裝誰類的腳本「Box_Show_ID_」 以顯示更多或更少的的Javascript顯示更多按鈕

實例ID /類:

<div class="Box_Show_ID_1"></div> 
<input type="button" id="Show_More_ID_1" value="Show More" /> 

這是代碼我作出正確的,但現在不工作...

http://jsfiddle.net/UPdmH/

+1

什麼是你的小提琴中的'image_id'? – mohkhan

+2

你的小提琴沒有選擇jQuery庫。另外,什麼是'image_id'? – ZimSystem

+0

對不起image_id.split('_');需要Box_ID.split('_'); ...我得到一個腳本什麼即時嘗試轉換爲我需要... –

回答

1

http://jsfiddle.net/UPdmH/2/

基本上你是從錯誤的索引

var Box_Data_ID = ID_Split[3];

+0

是的,這是工作完美...我的錯誤謝謝你! –

0

JSFiddle並沒有真正指出你想要顯示更多按鈕,如果它是一個鏈接,或者如果它應該顯示另一個div

如果你改變ID爲ShowMoreID_1它會讓它更容易一點:

$('button').click(function(e) { 
    e.preventDefault(); 
    var val = $(this).attr('id'); 
    var str = val.split('_'); 
    if(str[0] == 'ShowMoreID') { 
    var id = str[1]; 
    // do stuff 
    } else { 
    // dont do stuff 
    } 
}); 

更新爲包含jQuery庫。我把它調整了什麼,我想你想做的事:

http://jsfiddle.net/ZQ3pD/2/

+0

我嘗試你的代碼,但沒有工作與我做了什麼變化......你可以請檢查什麼可以是問題...謝謝http: //jsfiddle.net/ZQ3pD/ –

0

那這顯示更多/更少演示? DEMO http://jsfiddle.net/yeyene/uEXvk/1/

var orgContent = $('.excerpt').html(); 
var txtContent = $('.excerpt').text().substr(0, 50) + '... <a id="morelink">more</a>'; 
$('.excerpt').html(txtContent); 
$("body").on("click", '#morelink', function(){ 
    $('.excerpt').html(orgContent); 
    $('<a id="lesslink"> less</a>').appendTo('.excerpt'); 
}); 
$("body").on("click", '#lesslink', function(){ 
    $('.excerpt').html(txtContent); 
}); 
0

看來,如果有更多的複雜性比真正需要得到的ID。看這個。我改了一下你的HTML中,增加了一個jQuery庫(您標記它爲JavaScript,但在寫jQuery的),並增加了點擊()函數:

http://jsfiddle.net/qTNzc/

$('.btn').click(function(){ 
    this_id = $(this).attr('id'); 
    $('.Box_Show_ID_'+this_id).toggle(); 
}); 
1

小提琴:http://jsfiddle.net/UPdmH/3/

$(document).ready(function(){ 
var Box_Data_MSG_1  = "Show More"; 
var Box_Data_MSG_2  = "Show Less"; 
var Box_Data_Height  = "117px"; 

$("input[id*='Show_More_ID_']").click(function() { 
    var Box_ID    = $(this).attr("id"); 
    var ID_Split   = Box_ID.split('_'); 
    var Box_Data_ID  = ID_Split[ID_Split.length-1]; 
    var Box    = ID_Split[2]; 

    var Button_Value  = $('#Show_More_ID_' + Box_Data_ID).attr("value"); 

    if(Button_Value == Box_Data_MSG_1) { 
    $('#Show_More_ID_' + Box_Data_ID).attr('value', Box_Data_MSG_2); 
    } 

}); 
});