如何通过在列表视图上按下按钮来编写发送电子邮件的代码

How to code sending an email upon pushing a button on a list view

我正在创建一个基于视图显示用户的页面,我想向该视图添加一个按钮,该按钮将发送一封电子邮件,其中的主题填写了网站名称和一些其他文本.甚至可能预填一些 body.

我不想在列表中创建新字段,因为只有一小部分记录会利用此属性(只有那些具有支持角色的联系人)。该视图仅显示支持角色个人。我试图通过添加适当的信息来更改现有的电子邮件 link,但我不知道该怎么做。我的下一次尝试是添加一个按钮,然后在该按钮后面编写代码。这必须只是客户端更改,母版页没有。这是我的代码。我可以调用警报,但无法将我的电子邮件字符串放入它们中以使其正常工作或调用本地 js 函数。这些都不起作用。

我会JS,但我不是高手

<script language="javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.6.4/jquery.min.js" type="text/javascript"></script> 
<script type="text/javascript" src="http://code.jquery.com/jquery-1.10.2.min.js"></script>
<script language="javascript" type="text/javascript">

$(document).ready(function(){
    document.getElementById('pageTitle').innerHTML=document.title;
    _spBodyOnLoadFunctionNames.push("buttons");
});

function buttons()
{
    var $t = $('#js-listviewthead-WPQ2').next().next().find('tr');

    $t.each(function(){ 
//     $(this).append("<input type='button' value='Help' id='btnSub' onclick='alert(document.title);'/>");
    $(this).append("<input type='button' value='Help' id='btnSub' onclick='<a href="mailto:Steve@Wi.gov?subject=SharePoint Site Support">Steve@wi.gov</a>'>");
  });
}
</script>

电子邮件打开,主题为 pre-filled。

我们可以使用下面的代码来实现。

<script src="https://code.jquery.com/jquery-1.12.4.min.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function() {  
     addButtons();
});
function addButtons(){
    var listTitle="CustomList";
    $("table.ms-listviewtable[summary='"+listTitle+"']>tbody>tr").each(function(){
        $(this).append("<input type='button' value='Help' id='btnSub' onclick='javascript:openMail();'>");
    });
}
function openMail(){
    location.href="mailto:Steve@Wi.gov?subject=SharePoint Site Support";
}
</script>