我尝试使用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>
&#13;
我想改变这个&#34;是&#34;到&#34;不&#34;。谢谢你的帮助;)
答案 0 :(得分: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>
&#13;
答案 1 :(得分:0)
您有两种选择。
传递this
第二个参数context
$('span', this).text('My new Text');
获取this
元素并使用find
获取span
。
$(this).find('span').text('My new Text');
答案 2 :(得分:0)
请分离结构,样式和功能 - CSS,HTML和JS不应该在同一个空间 - 它总是更好地分离代码以获得更好的代码质量。还可以切换复选框的状态,以便“已检查”和“未检查”状态中有不同的文本。
你甚至可以用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>