2015-05-22 186 views
0
$(function() { 

    var info = JSON.parse($('#userInfo').text()); 
    var empFirstName = info.EmployeedFirstName; 
    var empLastName = info.EmployeedLastName; 
    var empFullName = empFirstName + " " + empLastName; 
}); 

我从超链接调用摘要函数。我只想在点击链接时调用汇总功能。如何将可变内容作为参数传递给函数

<a onclick="summary();">Summary</a> 

function summary(empFullName){ 
} 
+2

请详细 – Satpal

+3

范围的'empFullName'不是'$可用的外部(函数( ){})'因为你在里面用'var'声明了它, – charlietfl

回答

0

这会为你工作,但你应该看看window对象,全局变量,为什么他们可以被认为是不好的。

$(function() {  
    var info = JSON.parse($('#userInfo').text()); 
    var empFirstName = info.EmployeedFirstName; 
    var empLastName = info.EmployeedLastName; 
    window.empFullName = empFirstName + " " + empLastName; 
}); 

function summary(empFullName){ 
    // use empFullName here 
} 

然后修改你的链接在全球

<a onclick="summary(empFullName);">Summary</a> 

一些相关的阅读来传递:Should I use window.variable or var?

1

从链接中删除内联函数调用,并添加一个Click事件处理程序到你的链接,然后调用函数和你的变量传递给它,当单击处理程序被调用。看看这个片段,你就会明白这个想法。

$(function() { 
 

 
    //var info = JSON.parse($('#userInfo').text()); 
 
    //var empFirstName = info.EmployeedFirstName; 
 
    //var empLastName = info.EmployeedLastName; 
 
    var empFullName = 'foo' + " " + 'bar'; 
 
    
 
    // added click event handler here 
 
    $('a').on('click', function() { 
 
    summary(empFullName); // call summary with empFullName 
 
    }); 
 
    
 
}); 
 

 
function summary(empFullName){ 
 
    console.log(empFullName); 
 
    $('#output').text(empFullName); 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> 
 
<a href="#">Summary</a> 
 
<div id="output"></div>

+0

从超链接调用汇总函数。我只想在点击链接时调用汇总功能。 Summary user3479738

+0

@ user3479738您应该将其添加到问题 – CupawnTae

+0

@ user3479738您没有在您的问题中说过。 – DavidDomain

相关问题