2016-02-28 69 views
-2

與另一個DIV jQuery的

$(document).ready(function(){ 
 
     
 
    
 
    replaceContentInContainer= function(target,source,t){ 
 
      $(t).closest('.ola').find(target).html=$(t).closest('.ola')).find(source).html; 
 
    
 
    } 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> 
 
<div class="question-container"> 
 
    <div class="row content-data "> 
 
     <div class="col-xs-1"></div> 
 
     <div class="col-xs-10 ola"> 
 
      <div class="changeable-div"> 
 
       <div class="voters-info"> 
 
        <div class="voting-options row"> 
 
         <div class="col-md-6 hidden-xs agree-disagree"> 
 
          <a href="#" onclick="replaceContentInContainer('changeable-div', 'afcA',this)">AGREE</a> 
 
          <a href="#" onclick="replaceContentInContainer('changeable-div', 'afcD',this)">DISAGREE</a> 
 
         </div> 
 
        </div>   
 
       </div> 
 
      </div> 
 
      
 
      <div class="afcA" style="display:none"> 
 
       Add a reason for Agreeing 
 
      </div> 
 
      <div class="afcD" style="display:none"> 
 
       Add a reason for Disagreeing 
 
      </div> 
 
     </div>  
 
     <div class="col-xs-1"></div> 
 
    </div> 
 
</div>

我想或者用「AFCA」或「漁護署」相同的「問題容器」來代替「多變-DIV」的內容替換DIV的內容取決於點擊的鏈接。我已經刪除了一些不必要的代碼,但是div結構是一樣的(如果這個問題必須通過dom遍歷來解決)。我不能在任何地方使用「id」,因爲這個問題容器在我的html主體中重複了好幾次。

回答

0

這個語法是錯誤的$(t).closest('.ola').find(target).html=$(t).closest('.ola')).find(source).html;

你應該使用

var sourceHtml = $(t).closest('.ola')).find("."+source).html(); 
$(t).closest('.ola').find("."+target).html(sourceHtml); 

您可以檢查http://api.jquery.com/html/更多信息有關.html()

+0

非常感謝......它的工作! –

相關問題