如何使用jQuery或ASP.NET Core在h1.item_title含指定文本时新增button_two类div?
实现方案
jQuery 实现(要求使用closest、append方法)
直接在页面引入jQuery后添加如下脚本即可:
// 页面DOM加载完成后执行 $(document).ready(function() { // 选中所有包含指定文本的item_title标题 $('h1.item_title:contains("Peow, Wow.")').each(function() { // closest向上查找当前标题所属的item容器,再定位到容器内的buttons按钮组,追加新的button_two元素 $(this).closest('.item').find('.buttons').append(` <div class="button_two"> <!-- 此处可自定义按钮内容 --> <input type="button" value="自定义按钮" /> </div> `); }); });
注:jQuery的:contains选择器默认区分大小写,若需要忽略大小写匹配可自行调整筛选逻辑。
ASP.NET Core 服务端实现
如果你的CMS是服务端渲染Razor视图,优先选择该方案,无需依赖客户端脚本:
假设你的列表项模型为Item,包含Title属性存储标题内容,视图代码示例如下:
@model List<Item> <div class="items"> @foreach (var item in Model) { <div class="item"> <h1 class="item_title"> @item.Title </h1> <div class="buttons"> <div class="button_one"> <input type="button" value="buy" /> </div> @* 判定标题包含指定文本时渲染button_two *@ @if (item.Title.Contains("Peow, Wow.")) { <div class="button_two"> <input type="button" value="自定义按钮" /> </div> } </div> </div> } </div>
内容的提问来源于stack exchange,提问作者DANIL SUVOROV
相关产品推荐
相关产品推荐

