通过访问内部元素设置一些值

时间:2015-09-02 12:40:23

标签: jquery

嗨我需要用一些动态值来改变这个值0。如何通过访问此HTML来实现这一点。

这是我的html,我需要用一些动态值替换这个0或任何值。我如何通过jquery实现这一目标。

<span class="likeCount">
   <i class="fa thumbsSignIcons fa-thumbs-up"></i>
   0
</span>

谢谢!

3 个答案:

答案 0 :(得分:1)

you have two way for doing this

1) by using existing class
   $('.likeCount .value').html('some value'); 

or 

2) assign id (id='test') to span and use 
   $('#test').html('555'); 

http://jsfiddle.net/ztvk2ta1/3/

答案 1 :(得分:0)

我建议你修改HTML,以便将0值包装在span元素中,否则你将不得不遍历DOM以找到要更新的特定textNode,这很痛苦。试试这个:

<span class="likeCount">
   <i class="fa thumbsSignIcons fa-thumbs-up"></i>
   <span class="value">0</span>
</span>
$('.likeCount .value').text('100'); // update the value to 100

答案 2 :(得分:0)

这是一种无需额外跨度的方法

<!-- Creation of the bean for the interceptor -->
<bean id="timeoutSetter" class="com.package.CustomTimeoutInterceptor">
  <property name="receiveTimeoutByOperationName">
    <map key-type="javax.xml.namespace.QName" value-type="java.lang.Long">
      <entry value="20000">
        <key>
          <bean class="javax.xml.namespace.QName" factory-method="valueOf">
            <constructor-arg value="{http://serveraddress/Service}Operation1" />
          </bean>
        </key>
      </entry>
    </map>
  </property>
</bean>

<!-- I had the interceptor the list of outInterceptors -->
<cxf:bus>
    <cxf:outInterceptors>
      <ref bean="timeoutSetter"/>
    </cxf:outInterceptors>
</cxf:bus>
var textNodes = $(".likeCount")  
  .contents()  //lets us get the text nodes
  .each(function() {
      if( this.nodeType === 3 && $.trim(this.nodeValue).length ) { //look for a text node with next  
          this.nodeValue = 10  //set new text
          return false; //exit loop
      }
  });

但是如果你可以把它包裹在一个范围内,那么这个解决方案会好很多。