2016-10-10 39 views
0

我有一個ASP.NET repeater元素用作可點擊菜單。我使用jQuery來設置img src來指示當前選擇哪個項目。我有一個可行的解決方案,但我想知道是否有更優雅的方式來使用jQuery ......我的解決方案類似於解決方法。使用jQuery在回發上設置img src

我的HTML:

<div class="c_menuDiv"> 
    <img src="images/check_white.jpg" id="img_check" class="cd_checkImage" width="20px" > 
    <asp:Label ID="lblIssuedTo" runat="server" Text='<%#Bind("IssuedTo")%>'> 
    </asp:Label> 
</div> 

而且我的jQuery,在文件準備:

$('.c_menuDiv').each(function() { 
    issuedToBox = $('#txt_issuedTo').val();   <<== FROM A TEXTBOX 
    issuedToMenu = $(this).children("span").html(); 
    if (issuedToBox == issuedToMenu){ 
     $(this).find('img:first').attr('src','images/check_selected.jpg'); 
     } 
    }) 

我的問題是,是否有使用jQuery和避免js的IF語句更優雅的方式?我只問,因爲我想提高我的jQuery技能。

感謝您的任何建議。

+0

它可能會更有幫助後生成的HTML,而不是你的服務器端碼? – adeneo

+1

沒有什麼能夠以速度或可讀性擊敗'if'。 jQuery中的 – Teemu

+0

如果語句速度很快。不要擔心jquery的速度也很快 –

回答

1

你可以在沒有jQuery的情況下做同樣的事情。除非你有其他原因使用它...

<div class="c_menuDiv"> 
    <asp:Image ID="Image1" runat="server" ImageUrl="/images/check_white.jpg" /> 
</div> 

,然後回發只是改變ImageUrl

Image1.ImageUrl = "/images/check_selected.jpg";