Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/75.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何通过onload将动态url传递给函数_Javascript_Jquery_Onsen Ui - Fatal编程技术网

Javascript 如何通过onload将动态url传递给函数

Javascript 如何通过onload将动态url传递给函数,javascript,jquery,onsen-ui,Javascript,Jquery,Onsen Ui,我需要一个hep在这方面,我试图传递一个动态url到一个函数 代码 val.logo包含如下url: 我需要将此url传递给下面的函数 function getImage(url) { setStorage("merchant_logo",url); var logo = getStorage("merchant_logo"); onsenAlert(logo); return logo; } function loadPageMerchantInfo(str) { var merlogos

我需要一个hep在这方面,我试图传递一个动态url到一个函数

代码

val.logo包含如下url:

我需要将此url传递给下面的函数

function getImage(url)
{
setStorage("merchant_logo",url);
var logo = getStorage("merchant_logo");
onsenAlert(logo);
return logo;
}

function loadPageMerchantInfo(str)
{

var merlogos = getImage();
onsenAlert(merlogos);
setStorage("merchant_id",str);


var options = {
  animation: 'none',
  onTransitionEnd: function() {                   
      displayMerchantLogo2( 
             merlogos,
             '' ,
             'page-merchantinfo'
      );                  
      callAjax("getMerchantInfo","merchant_id="+ getStorage('merchant_id'));              
  } 
};  
sNavigator.pushPage("merchantInfo.html", options);     
merhantPopOverMenu.hide(); 
}
因此,当我打印值时,没有任何内容,只是在html中显示“未定义”。

onload="getImage(val.logo);";
js内部:

window.onload=()=>getImage(val.logo);
window.onclick=()=>loadPageMerchantInfo(val.merchant_id);
您可以看看箭头函数(普通函数也可以)和闭包

为什么您的代码不起作用:

window.onload="a string";
//the js engine does:
window.onload();
//wich will cause an error:
ERROR: window.onload is not a function!
如果您真的想要这种糟糕的字符串样式,您需要将字符串转换为函数:

onload=new Function("getImage("+ val.logo +");");
onclick=new Function("loadPageMerchantInfo("+ val.merchant_id +");");

然而,每个JSlover都会因此杀了你。

onload=“getImage('+val.logo+);“onclick=“loadPageMerchantInfo('+val.merchant_id+);应该是onload=“getImage(val.logo);“onclick=“loadPageMerchantInfo(val.merchant\u id);因为你不能在functions.htm+=''中插入这样的字符串;嗨,乔纳斯,我正在使用一个API和htm+='';如果不使用“+”我就无法获得值。通过使用上述代码,我得到+val.merchant_id+的值。但是我没有得到+val.logo+的值,因为val.logo包含一个url。@stalinstephen我认为您应该更深入地了解js。我们已经给了你必要的答案…兄弟我理解你。。让我补充一下:这是一个Phonegap应用程序
onload=new Function("getImage("+ val.logo +");");
onclick=new Function("loadPageMerchantInfo("+ val.merchant_id +");");