javascript - How to change the text of li in ul without changing it's other properties? - Stack Overflow

I have a li in a ul like following.<li class="list-group-item" data_id="1909" id

I have a li in a ul like following.

<li class="list-group-item" data_id="1909" id="1909"><input type="checkbox" class="checkboxes" value="1909" name="Navigate Window">Navigate Window</li>

I tried to change a text of this li with the following code.

$('#list1 #' + selectedId).text('abcd');

Using this code, the text is changing fine. But it losts the input inside the li. How do I prevent the replacing whole li?

And also I tried with the following in stackoverflow. change just text in li that contains img

And i tried it like following,

$("ul.list-group > li.list-group-item > span.thetext").html('abcd');

My ul class is list-group. But i failed. How can do this?

Thanks in Advance!

I have a li in a ul like following.

<li class="list-group-item" data_id="1909" id="1909"><input type="checkbox" class="checkboxes" value="1909" name="Navigate Window">Navigate Window</li>

I tried to change a text of this li with the following code.

$('#list1 #' + selectedId).text('abcd');

Using this code, the text is changing fine. But it losts the input inside the li. How do I prevent the replacing whole li?

And also I tried with the following in stackoverflow. change just text in li that contains img

And i tried it like following,

$("ul.list-group > li.list-group-item > span.thetext").html('abcd');

My ul class is list-group. But i failed. How can do this?

Thanks in Advance!

Share Improve this question edited May 23, 2017 at 10:33 CommunityBot 11 silver badge asked Sep 17, 2014 at 7:32 codebotcodebot 2,6663 gold badges44 silver badges95 bronze badges
Add a ment  | 

2 Answers 2

Reset to default 3

The easiest solution is to wrap the text within a span then change the contents of the span using a selector like

var selectedId = '1909';
$('#list1 #' + selectedId + ' span').text('abcd');
<script src="https://ajax.googleapis./ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<ul id="list1">
  <li class="list-group-item" data_id="1909" id="1909"><input type="checkbox" class="checkboxes" value="1909" name="Navigate Window"><span>Navigate Window</span></li>
</ul>

If that is not possible, then based on your markup, you need to change the contents of the last child of your li so

var selectedId = '1909';
$('#list1 #' + selectedId).contents().last().text('abcd');
<script src="https://ajax.googleapis./ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<ul id="list1">
  <li class="list-group-item" data_id="1909" id="1909"><input type="checkbox" class="checkboxes" value="1909" name="Navigate Window"><span>Navigate Window</span></li>
</ul>

Try using .append() and wrap the text inside span as shown :

 $('#list1 #' + selectedId).append('<span>abcd</span>');

Working Demo

发布者:admin,转转请注明出处:http://www.yc00.com/questions/1744770461a4592727.html

相关推荐

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信