0

我尝试在 sharepoint 中修改外部列表的列。

alert(1) alert(2)作品。但alert(3)并不总是有效。问题是什么?这是我的代码:

 <script type="text/javascript">

    alert(1); 
    $().ready(function() { 
          alert(2);     
          $('table[summary="CalisanBilgi"] ').each(function() {
              alert(3);         
              $('td:last-child', $(this)).html('<img src="http://ahapp/img/image.aspx?s="'+$('td:last-child', $(this)).html() +'" />')  
          });
    }); 

    </script>

编辑:

这是列表的代码,我可以从浏览器中使用 Web 开发工具查看 html。我尝试修改名为 ID 的最后一列以显示此人的图像。

<table  summary="CalisanBilgi" ....>
<tbody>
<tr class=" ms-itmHoverEnabled ms-itmhover">
<td class="ms-cellStyleNonEditable ms-vb-itmcbx ms-vb-imgFirstCell">
ID
</td>
<td class="ms-cellstyle ms-vb2">
NAME
</td>
<td class="ms-vb-lastCell ms-cellstyle ms-vb2 ms-vb-lastCell">
ID
</td>
</tr>
</tbody>
</table>

回答:

$(document).ready(function () {
        $('table[summary="CalisanBilgi"] tr').find('.ms-vb-lastCell').each(function(){

           $(this).html('<img src="http://ahapp/img/image.aspx?s=' + $(this).html() + '"/>') ;       
       });  

}); 
4

2 回答 2

3

我认为这应该做你想要的:

   $(document).ready(function() 
   { 
       $('table[summary="CalisanBilgi"] tr td:last-child').each(function()
       {
           $(this).html('<img src="http://ahapp/img/image.aspx?s=' + $(this).html() + '"/>') ;       
       });
   }); 

cfr这个小提琴

一些解释的话:

1)选择器选择表中每个table[summary="CalisanBilgi"] tr td:last-child最后的数组,并带有摘要tdtr'table[summary="CalisanBilgi"] tr td:last-child'

2) 在each()函数内,这些 td 中的每一个都由$(this)

3)我只取这个的html内容td,包含用户的id,并用它来生成img最终替换原始内容的标签。

我建议您通过共享点(服务器)代码生成此内容,这样会更干净...

于 2013-05-24T10:38:47.697 回答
0

我想你忘记了分号

这里

$('td:last-child', $(this)).html('<img src="http://ahapp/img/image.aspx?s="'+$('td:last-child', $(this)).html() +'" />');

于 2013-05-24T09:54:45.500 回答