如何将值从一个javascript函数传递给另一个

时间:2019-01-23 18:27:54

标签: javascript

我正在尝试将值从一个函数传递给另一个onclick

function getReporteeList() {
    $.ajax({
        url:'http://localhost:8088/JirasTrackingApp/reporter/Reportees/ReporteeList/'+ $("#ManagerId").val(),
        type:'GET',
        dataType: 'json',
        success: function(result){      
            alert(result);  
            var content = '';
            $.each(result,function(key,value){
                content += '<tr>';
                content += '<td>'+value.Name+'</td>';
                content += '<td>'+value.UserId+'</td>';
                content += '<td>'+'<a href="#" onclick ="getJira('+value.UserId+')">'+value.count+'</a>'+'</td>';
                content += '</tr>';

            });
            $('#employee_table').append(content);
            console.log(result);


        }
    });
}
function getJira(value)
{
    var empid = document.getElementById("value").value;
    console.log(empid);
}

单击UserId超链接时引发错误: 未捕获的ReferenceError: 未定义at12345 在HTMLAnchorElement.onclick

2 个答案:

答案 0 :(得分:1)

value.userid是一个字符串,因此在getJira()的参数中需要用引号引起来。

content += '<td>'+'<a href="#" onclick ="getJira(\''+value.UserId+'\')">'+value.count+'</a>'+'</td>';

答案 1 :(得分:0)

只需为您的<td>添加一个事件侦听器并在那里获取值。另外,如果您只是想调用函数,还有一些锚点以外的选项。

以下解决方案仅使用普通的旧javascript(无jquery)。基本上,它在表employeeTable中查找所有范围。然后,它添加一个点击侦听器并提取ID。您可以按当前当前设置的其他方式设置值。您可以提取一个值,实际上就是您想要包含该值的任何类。

示例:

var spans = document.getElementById('employeeTable').querySelectorAll('span');
spans.forEach(function(elem){
    elem.addEventListener('click', function () {
    console.log(this.id);
  }, false);
})
<table id="employeeTable">
    <thead>
      <tr>
          <td>Name</td>
          <td>Class</td>
          <td>Link</td>
        <tr>
    </thead>
    <tbody>
        <tr>
            <td>Juice</td>
            <td>Math</td>
            <td><span id="t12345">here is the click</span></td>
        </tr>
        <tr>
            <td>Eggs</td>
            <td>English</td>
            <td><span id="t8675309">here is the click</span></td>
        </tr>
    </tbody>
</table>
<Br><br><br>
<span>I'm a span outside of the table, I won't fire click listener</span>