2017-06-01 61 views
-3

我嘗試使用jquery更改div框中的文本插入。這裏是代碼:

<div onClick="$(this span).text('My new Text');" class="switch switch-success" style="float: right;"> 
 
    <label> 
 
    <input type="checkbox"><span>Yes</span> 
 
    </label> 
 
</div>

我想改變這個 「是」, 「否」。感謝您的幫助;)

+2

[jQuery的學習中心(https://learn.jquery.com) – Andreas

+0

請試一下。這是基本的DOM遍歷。 – Xufox

+0

這必須是重複的問題... – evolutionxbox

回答

1

使用.find方法

見工作小提琴here

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<div onClick="$(this).find('span').text('My new Text');" class="switch switch-success" style="float: right;"> 
 
    <label> 
 
    <input type="checkbox"><span>Yes</span> 
 
    </label> 
 
</div>

0

你有兩個選擇。

  1. this這是context

    $('span', this).text('My new Text'); 
    
  2. 第二參數獲取this元素和使用find得到span它。

    $(this).find('span').text('My new Text'); 
    
0

請獨立的結構,風格和功能 - 的CSS,HTML和JS不應該在同一個空間 - 它總是更好的代碼更好的代碼中分離quality.Also你可以做一個切換對於複選框的狀態,以便在「已檢查」和「未檢查」狀態中顯示不同的文本。

你甚至可以做到這一點與CSS

$('.switch').click(function(){ 
 
    $(this).find('span').text('My new Text') 
 
})
.switch{float: right}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script> 
 

 
<div class="switch switch-success" > 
 
    <label> 
 
    <input type="checkbox"><span>Yes</span> 
 
    </label> 
 
</div>