将onclick值返回到JavaScript函数
我创建了一个带有onclick事件的锚,该事件调用JavaScript函数。JavaScript函数返回一些值。我想在另一个JS函数中使用该值 e、 g将onclick值返回到JavaScript函数,javascript,html,Javascript,Html,我创建了一个带有onclick事件的锚,该事件调用JavaScript函数。JavaScript函数返回一些值。我想在另一个JS函数中使用该值 e、 g load()将返回一些值,这些值将传递给另一个js函数。如何捕获并存储返回值,然后将该值传递给该函数?类似的内容 <a onClick="loading(myFunction());"> function outerFunc(a) { alert(a); } function innerFunc() { return '
load()
将返回一些值,这些值将传递给另一个js函数。如何捕获并存储返回值,然后将该值传递给该函数?类似的内容
<a onClick="loading(myFunction());">
function outerFunc(a)
{
alert(a);
}
function innerFunc()
{
return 'test';
}
onclick="outerFunc(innerFunc());"
如果
myFunction()
是您最初的onClick代码,它将在以后传递到加载
。您能简单地用内部函数调用外部函数吗
function outerFunc(a)
{
alert(a);
}
function innerFunc()
{
return 'test';
}
onclick="outerFunc(innerFunc());"
或者,如果需要在其他事件中使用返回值,请设置一个变量
var retval;
function outerFunc()
{
if(retval) alert(retval);
}
function innerFunc()
{
retval = 'test';
return retval;
}
onclick="return innerFunc();"
在另一个onclick事件中
onclick="return outerFunc();"
a) 使用例如()
b) 如果您的函数位于另一个使用存储值的页面上,那么您可能正在使用浏览器的setItem()、getItem()和更多高级功能来使用您在注释中提到的b机制,以便以后保存。您可以使用JavaScript函数是闭包的事实,因此可以访问在同一范围内声明的局部变量:
var clickedValue; // No need to set a value here, just declare is
myAnchor.addEventListener('click',function(evt){
// Call the other function, setting the 'this' scope to be the anchor
// The scope of the variable set it the one above
clickedValue = someFunction.call(myAnchor,evt);
},false);
/* later on… */
otherFunction(clickedValue);
实际上,我想存储该返回值并在以后的调用中使用它,而不是在同一个调用中。情况就像onclick返回值一样,我必须存储该值并传递给其他js函数,这些函数将在单击另一个锚点时被调用。-1用于使用
onclick
属性,而不是在JavaScript中附加事件处理程序。抱歉,但是不起作用,我想在关闭page@Phrogz-那么你是说使用内置属性是件坏事?我觉得你疯了。@Jack-是的,当页面关闭时,全局变量就会消失。您唯一的选择是使用cookie或将值传递回服务器进行存储(会话、数据库等),并在用户查看页面时调用它。我编辑了我的答案,以说明您在评论中提到不希望立即使用返回值的事实。如您下面的评论所示,你在这个问题上做得很差,没有解释清楚你需要什么。也许你应该编辑你的问题来明确用户体验(用户操作和系统响应)应该是什么。我同意。。。但是自从你的新的,没有否决票。@Phrogz-它正在处理cookies,因为我想在另一个页面上使用返回值,我已经将它存储到cookie中并再次使用,谢谢大家的帮助。