2013-01-17 37 views
-2

CSS做:Jquery的格式代碼我想和JSTL核心,而不是

<style> 
    body{font-family: arial; } 
    .nopad{padding-bottom:5px;} 
    .exBt:before {content: "[+]";float:left;padding-right:3px;} 
    .exBt_nobtn {height:12px;width:12px;float:left;padding-left:50px;} 
    </style> 

JQuery的:

<script> 
jQuery(document).ready(function(){ 
jQuery(".nopad").each(function(){ 
if (jQuery(this).find('div').hasClass('.exBt')) 
    { 
    jQuery(this).find(".taskName").css('font-weight','bold'); 
    jQuery(this).find(".taskName").css('font-size','16px'); 
    } 
});//end each 
});//end main 
</script> 

HTML:

<div class="nopad"> 
    <div class="exBt"></div> 
    <div class="taskName">This is a title</div> 
    </div> 

    <div class="nopad"> 
    <div class="exBt_nobtn"></div> 
    <div class="taskName">this is subcontent</div> 
    </div> 

    <div class="nopad"> 
    <div class="exBt_nobtn"></div> 
     <div class="taskName">this is subcontent</div> 
     </div> 

此代碼WOR很好。我只是希望它做的工作與此:

<div class="nopad${addDivClass}"> 
      <c:choose>//tests if heading content has child content 
       <c:when test="${item.nestHead}"> 
       //if it has content use one class(add a-+ icon) 
        <div class="extBt" id="extBt-${item.itemId}"></div> 
       </c:when> 
       <c:otherwise> 
      //if there is no child content loaded by ajax just indent with another class 
        <div class="extBt_nobtn" id="extBt-${item.itemId}"></div> 
       </c:otherwise> 
      </c:choose> 

我很新的JSTL核心,但我覺得做這樣的說法會更清潔 - 我只是不知道

+0

我不清楚問題是什麼 –

+0

我期待着去做jquery做的事情,但是用JSTL核心代替。只是一個JSTL等價物 – namretiolnave

+1

我不明白這個問題 - 你已經知道什麼時候使用每個類,看起來像所有的JS所做的是添加更多的CSS,當它是'.extBt'。使用現在相同的邏輯,並添加另一個類,或修改'extBt'類。 –

回答

0
<c:choose> 
       <c:when test="${item.nestHead}"> //test for content 
        <div class="superset-head" style="font-weight:bold">${item.name}</div>//bold 
       </c:when> 
       <c:otherwise> 
        <div class="superset-head">${item.name}</div>//not bold 


       </c:otherwise> 
     </c:choose> 

那會是什麼,我試圖完成。我正在努力學習基本的語法,並把它做好。

1

如何如果我得到它是正確的,你希望你的jstl代碼選擇什麼取決於ajax請求的結果。但是這是不可能的,因爲jstl代碼在服務器端運行,並且在客戶端運行javascript。 JIST瞭解JSTL和JSP更仔細,你會明白:)

+0

麻煩在於讓jsp對其進行測試.extBt類存在然後將更改應用到.taskName這是圖標旁邊的副本。我得到你對服務器端沒有獲得AJAX的說法,但可以如果一個類存在於另一個類中,只需更改另一個DOM對象? – namretiolnave

+0

我不確定,但是當JSTL代碼運行時,沒有任何DOM元素,因爲JSTL html代碼只是一個文本。 – Rasalom