如何在 jquery 中访问最近的 p 标签?

     2023-03-05     268

关键词:

【中文标题】如何在 jquery 中访问最近的 p 标签?【英文标题】:How to Access Closest p tag in jquery? 【发布时间】:2012-09-28 23:19:09 【问题描述】:

我在使用 jquery 中的 .closest() 方法时遇到问题。这是我遇到问题的 html 和 jquery 示例。

HTML ERB 片段

<% @posts.each do |post| %>
  <tbody>
    <tr>
      <td><%= post.title %></td>
      <td><%= post.description %></td>
      <td><%= post.episodeNum %></td>
      <td><%= post.highDef %></td>
      <td>
        <%= link_to 'Show', post, :class => 'btn btn-info' %>
        <%= link_to 'Edit', edit_post_path(post), :class => 'btn btn-primary' %>
        <%= link_to 'Destroy', post, :class => 'btn btn-danger', confirm: 'Are you sure?', method: :delete %>
      </td>
      <td>
        <b>Votes: </b>
        <p class="current_vote"><font color=#1C1C1C>
          <%= post.upvotes.size - post.downvotes.size %>
        </p></font>
        <button type="button" class="buttonUp btn" id="<%= post.id %>">Increase Vote</button>
        <button type="button" class="buttonDown btn" id="<%= post.id %>">Decrease Vote</button>
      </td>
    </tr>
  <% end %>

JQuery 片段

$(document).ready(function() 
    $('.buttonUp').bind('click', function() 
        $.ajax(
            type: "POST",
            url: "/posts/increaseVote?id=" + $(this).attr("id"),
            contentType: 'application/json; charset=utf-8',
            dataType: 'json',
            success: function(data) 
                $(this).closest('p').text(data);
            
        );
    );
    $('.buttonDown').bind('click', function() 
        $.ajax(
            type: "POST",
            url: "/posts/decreaseVote?id=" + $(this).attr("id"),
            contentType: 'application/json; charset=utf-8',
            dataType: 'json',
            success: function(data) 
                $(this).closest('p').text(data);
            
        );
    );
);

另外,我正确接收了我的 json,在我的测试中,我的 json 数据回调只包含一个整数。

【问题讨论】:

【参考方案1】:

如果 p 是元素的祖先,则使用 .closest();

如果 p 是元素的兄弟,使用 .siblings();

 $(this).closest('p').text(data);

 $(this).siblings('p').text(data);

【讨论】:

兄弟只有一个'b',就像我告诉dystroy一样【参考方案2】:

你不需要siblings 吗?

 $(this).siblings('p').text(data);

尽管有它的名字,closest 用于查找自身和祖先,而不是查找作为父元素的子元素的元素。

【讨论】:

@TheZ 谢谢。当英语是一门外语时,这不是一个常用词:)

jquery怎样获取并且修改p标签内的值

可以先使用jQuery选择器将p标签选中,然后用html()函数修改p标签内容。1、新建html文档,在body标签中添加一个p标签,标签的id设为“demo”并添加一段文字,然后引入jQuery:2、添加script标签,使用jQuery选择器$("#demo")将p标... 查看详情

jquery怎样获取并且修改p标签内的值

参考技术A可以先使用jQuery选择器将p标签选中,然后用html()函数修改p标签内容。1、新建html文档,在body标签中添加一个p标签,标签的id设为“demo”并添加一段文字,然后引入jQuery:2、添加script标签,使用jQuery选择器$("#demo&qu... 查看详情

jquery如何设置video标签的时间!

...获取了视频播放的时间但是出现的效果却是0.0000000这样,如何改成00:001、新建一个html文件,命名为test.html。2、在test.html文件内,使用div标签创建一个模块,在div内,使用p标签创建三行文字,p标签作为div的子标签。3、在test.html... 查看详情

如何让textarea中输入多行的数据在p标签中换行?

我们在用React开发Web项目的过程中,有的时候,我们需要把textarea中输入的多行字符串,在其他的标签中输出来,比如p标签。但是,往往这个时候,在p标签中输出的内容其默认情况下是不换行的。比如下面的代码:importReact,{Compo... 查看详情

echarts如何在地点名称的后面动态的追加一些文字

绘制出来的地图,原本设定的只有地名,现在想知道如何实现动态的在地名后面添加一些文字数据参考技术A/如果要用jquery触发进行跳转,那么a标签中【必须要有其它子标签】,然后触发该子类标签才能进行跳转<ahref="http:... 查看详情

盒模式(代码片段)

...么知道标签和标签之间应该显示过大的间距?-我么自己如何控制这些间距?盒模式  在body中的么个HTML标签实际上都被包围在一个看不见的矩形中,这个矩形就叫做“盒”。<p>欢迎访问长春华腾汽车</p><p>世界伍... 查看详情

在vue中后台返回的文本包含标签如何解析为html

参考技术A在项目中遇到解析html,发现v-html并不满足复杂的渲染,就使用jq来处理1.v-html处理简单的标签如:text="<p>vue转换</p>"html中解析:<pv-html="text">text</p>2.返回标签中还有img、a标签,使用v-html... 查看详情

如何在scrapy中获取div中<p>标签的数量?

】如何在scrapy中获取div中<p>标签的数量?【英文标题】:Howtogetthenumberof<p>tagsinsidedivinscrapy?【发布时间】:2015-12-2611:07:49【问题描述】:我正在抓取这个网站link。&lt;p&gt;的最后一个标签包含user_info,它在我使用时... 查看详情

如何把jquery的值放入img标签的src里面

通过jquery已经获取了图片的地址。该如何吧jquery获取的图片地址放入img标签的src里面?需要准备的材料分别有:电脑、html编辑器、浏览器。1、首先,打开html编辑器,新建html文件,例如:index.html,并引入jquery。2、在index.html中... 查看详情

我们如何在 jQuery/php/mySQL 中显示最近的通知?更新

】我们如何在jQuery/php/mySQL中显示最近的通知?更新【英文标题】:HowcanweshowrecentnotificationsinjQuery/php/mySQL?update【发布时间】:2016-07-0716:06:55【问题描述】:从这里继续提问HowcanweshowrecentnotificationsinjQuery/php/mySQL?如下面的答案所述... 查看详情

我们如何在 jQuery/php/mySQL 中显示最近的通知?

】我们如何在jQuery/php/mySQL中显示最近的通知?【英文标题】:HowcanweshowrecentnotificationsinjQuery/php/mySQL?【发布时间】:2016-07-0621:10:12【问题描述】:假设有一个新行插入到数据库中。如何在div中显示一次通知并在关闭它后不再显示... 查看详情

如何在 BeautifulSoup 中访问名为“name”的标签

】如何在BeautifulSoup中访问名为“name”的标签【英文标题】:Howtoaccessatagcalled"name"inBeautifulSoup【发布时间】:2013-01-0407:24:35【问题描述】:我想访问一个名为"name"的标签,例如:<contact><name>Yesügey</name>... 查看详情

如何使用 jQuery 去除 HTML 标签?

】如何使用jQuery去除HTML标签?【英文标题】:HowtostripHTMLtagswithjQuery?【发布时间】:2012-10-1920:30:27【问题描述】:我想从字符串中删除HTML标记。例如假设我们有字符串:<p>exampleivegotastring</P>我如何编写一个函数来删除&a... 查看详情

标签嵌套

...,所以实践中会遇到很多问题,所以记下,整理以巩固。最近遇到了关于标签的嵌套问题,先是遇到了a标签嵌套a标签的问题,然后室友遇到了p标签的嵌套问题。a标签中嵌套a标签,浏览器会解析成兄弟关系。而p标签中嵌套div,... 查看详情

如何在中继器中访问标签

】如何在中继器中访问标签【英文标题】:HowCanAccessLabelInRepeater【发布时间】:2017-09-0413:29:05【问题描述】:我尝试访问中继器中的标签以获取值并在同一标签中设置另一个值<ulclass="mail-list"><asp:RepeaterID="repMsg"runat="server"D... 查看详情

如何使用jquery在标签中显示多选下拉列表的选定文本?

】如何使用jquery在标签中显示多选下拉列表的选定文本?【英文标题】:Howtodisplayselectedtextofmultiselectdropdowninlabelusingjquery?【发布时间】:2016-09-1301:29:58【问题描述】:我正在使用BootstrapMultiselectdropdown。我想在标签中显示选定的... 查看详情

vuetify 规则功能 - 如何在验证期间访问组件标签?

】vuetify规则功能-如何在验证期间访问组件标签?【英文标题】:vuetifyrulefunction-howtoaccesscomponentlabelduringvalidation?【发布时间】:2019-08-0207:46:22【问题描述】:我想在组件的“规则”函数中访问组件的标签属性,以便可以在错误... 查看详情

win10怎么取消快速访问文件夹

  打开Windows10的资源管理器,就可以看到Windows10的快速访问栏了,在这里不但显示出了我们最近使用的文件夹,同时还会显示出我们最近访问的文件  2  我们右键点击左侧的“快速访问”,在弹出的菜单中选择“选项”... 查看详情