需要获取我单击按钮的行上的字段的值

时间:2019-09-06 15:02:13

标签: javascript sharepoint-2013

我在SharePoint页面(aspx)的底部有一个列表视图,每条记录都是提供支持的联系人。我有名称,电子邮件地址和一个按钮,该按钮应打开电子邮件并获取其旁边的电子邮件地址。该按钮是通过js添加到屏幕上的,并且不是列表视图的一部分。按钮单击功能如何获得其左侧的地址?

我一直在寻找。

<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 $t = $('#js-listviewthead-WPQ2').next().next().find('tr');
    $t.each(function(){
        $(this).append("<input type='button' value='Help' id='btnSub' onclick='javascript:openMail();'>");
    });
}
function openMail(){
    var emailString = "mailto:";
    var emailID = getEmail('SharePointName');
//alert(emailID);

    emailString += emailID ;
    emailString += "?Subject=SharePoint Site Support - Site=";
    emailString += _spPageContextInfo.webServerRelativeUrl;;
    //alert(emailString);
    location.href=emailString;
}
function getEmail(title) {
    var userEmail = "Steve.@Wi.gov";
    return userEmail;
}
</script>

我想获取电子邮件地址并将其附加到emailString上以创建适当的href。

1 个答案:

答案 0 :(得分:0)

我们可以使用下面的代码来实现它,修改代码中的“ listTitle”以使其可以在一个列表视图Web部件中使用。

<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' class='btnSub' onclick='javascript:openMail(this);'>");
    });
}
function openMail(btn){
    var emailString = "mailto:";
    var emailID = $(btn).prev("td").text();
    //alert(emailID);

    emailString += emailID ;
    emailString += "?Subject=SharePoint Site Support - Site=";
    emailString += _spPageContextInfo.webServerRelativeUrl;;
    //alert(emailString);
    location.href=emailString;
}
</script>

enter image description here