请教jQuery index问题。

clipboard.png

里面的设置是一个插件,单击会弹出窗口,窗口中有输入框,输入框的值要等于黑色圈(黑色圈是一个span元素)中的值,设置与每行中的span一一对应。

<ul class="liebiao">

   <li class="col-xs-12 shanghu a">
               
       <p>商户名称 <span style="margin-left: 246px;" class="sp">流浪人酒吧</span></p>
            
          <button class="btn btn-xs btn-yellow sure" onclick="click_set_add(this,521);" title="设置" id="oli">设置  </button> 
          
       </li>
       
        <li class="col-xs-12 same a">
            
         <p>商户住址 <span style="margin-left: 246px;" >北京住邦2000</span></p>
         
           <button class="btn btn-xs btn-yellow" onclick="click_set_add(this,521);" title="设置">设置  </button>                  
       </li>
       
       <li class="col-xs-12 same a" >
            
          <p>企业法人<span class="word">宋小宝</span ></p>
          
          <button class="btn btn-xs btn-yellow" onclick="click_set_add(this,521);" title="设置">设置  </button> 
                          
       </li>
       
       <li class="col-xs-12 same">
            
          <p>联系电话<span class="word">7804199</span></p>
          
          <button class="btn btn-xs btn-yellow" onclick="click_set_add(this,521);" title="设置">设置  </button>
          
       </li>
   </ul>

click_set_add(this,521)是弹出窗插件。

如何才能单击设置输入值和他每行的span元素对应起来呢?谢谢!

$(".liebiao li button").each(function(index){

 $(this).click(function(){
    
    $($(".liebiao li p span")[index]).innerHTML=$(".in").val;//.in是插件弹窗的input
    
})

})    


阅读 1.8k
2 个回答
第一

你可以先尝试把你放上去的代码格式化一下,感觉看起来格式没有对齐。

第二

你可以给每个“设置”按钮添加一个class,然后在js中对这个class做事件监听。

$('.update-button').on 'click', function(event){
    $target = event.currentTarget;
    spanDom = $target.parent().find("p span");
    spanVal = spanDom.val();
    //set you input value
}

我的理解是,你主要的疑问是,怎样在点击按钮获得同一li下的特定span的值。
获得span的值:

$(".liebiao li button").click(function(){
            var text = $(this).parent().find("p span").html()
            alert(text);
        });

希望能帮到你

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题