javascript-调用的js 为何取不到值?

问题描述

调用的js 为何取不到值?

代码:111.js

 document.write("<script language='javascript' src='http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=js&ip=222.5.142.25'></script>");
document.write("<script>var gj=remote_ip_info.country;</script>")
var Url,kk,cHeight,cWidth,cReferrer,cPage,gj;
Url="http://127.0.0.1:82/tj/cs_tjcs.asp";
kk="123"
//gj=remote_ip_info.country;
cHeight = screen.height;
document.write("<script language=javascript src="+Url+"?kp="+kk+"&gj="+gj+"></script>");

此代码中,直接通过var gj=...无法获取值,通过document.write("var gj=remote_ip_info.country;")可以获取值,但是在最后一行代码调用时确无法取到值&gj="+gj+"。
通过document.write("var gj=remote_ip_info.country;")获取值后,可以通过document.write("alert(gj);")正确显示。
要求在最后一行代码中取到值,在线等大侠指教,谢谢!

解决方案

参考document.write, onload and variable scope issue
直接用document.write不能保证立即获得新浪的返回值,可能就会出现取不到值的问题。可以在script的onload时再调用后续代码

<script type="text/javascript">
var myLoader = function(filename, fun) {
  var head   = document.getElementsByTagName('head')[0],
      script = document.createElement('script');
  script.type= 'text/javascript';
  script.src = filename;
  if(typeof fun === 'function'){ script.onload = fun; }
  head.appendChild(script);
};

myLoader("http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=js&ip=222.5.142.25", function(){
    var gj=remote_ip_info.country;
    var Url,kk,cHeight,cWidth,cReferrer,cPage,gj;
    Url="http://127.0.0.1:82/tj/cs_tjcs.asp";
    kk="123"
    //gj=remote_ip_info.country;
    cHeight = screen.height;
    console.log(gj);
    myLoader(Url+"?kp="+kk+"&gj="+gj, function(){});
});
</script>

解决方案二:

js取htmlcheckbox值
js调用后台值
js取struts2的值

解决方案三:

 document.write("<script language='javascript' src='http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=js&ip=222.5.142.25'></script>");
document.write("<script>var gj=remote_ip_info.country;</script>")
<script>
var Url,kk,cHeight,cWidth,cReferrer,cPage,gj;
Url="http://127.0.0.1:82/tj/cs_tjcs.asp";
kk="123"
//gj=remote_ip_info.country;
cHeight = screen.height;
</script>
document.write("<script language=javascript src="+Url+"?kp="+kk+"&gj="+gj+"></script>");
时间: 2024-09-02 03:48:00

javascript-调用的js 为何取不到值?的相关文章

callback(data)-javascript代码,从request取到callback值之后,有段代码没看懂,请大神指导。

问题描述 javascript代码,从request取到callback值之后,有段代码没看懂,请大神指导. if('${callback}' != ''){ var callback = eval('window.opener.${callback}'); callback(data); } 非常疑惑,为什么可以执行callback(data);这段代码没看懂啊. 解决方案 callback 是一个方法吧,你找找看

怎么引入(调用)一个JS文件_javascript技巧

我们旺旺需要调用别的 js文件.怎么处理? 看随机抽取这个例子.在一个页面中如下: <html> <head> <title>random number</title> <script type="text/javascript"> //随机抽取人名 </script> </head> <body> <form> <input type="button"

js怎么取这个传过来的值

问题描述 js怎么取这个传过来的值 后台程序如图,info的值为 [model.Info@69a3f7e3 {sjd:8:00-9:00, yyid:20151014021, doctorid:2, name:赵一, keshi:内科, yydate:20151014, ifchecked:0}, model.Info@e2d2e9eb {sjd:9:00-10:00, yyid:20151014022, doctorid:2, name:赵一, keshi:内科, yydate:2015101

javascript同步Import,同步调用外部js的方法_javascript技巧

在线演示地址http://www.jb51.net/jslib/Import/a.html 主要功能代码import.js 复制代码 代码如下: <!--  (function(){        if(typeof window._Import != "undefined") return; //防止多次加载        function _Import(uri, x) {          var f = arguments.callee.caller;          

php 中javascript调用js实例方法

这三种方法都是从网上找到了,第一种测试可以,后面二种也可以,不过第一次在不同浏览器可能不兼容. */ //方法一 echo "document.write('<script language="javascript" src="/ads/js/$js"></script>');"; //方法二 echo "var s=document.createelement('script');"; echo &q

javascript调用XML制作连动下拉框

传统的HTML页面中连动下拉框采用了两种方法:1)直接将下拉框中的内容hardcode于html的javascript中,调用javascript函数循环写入下拉框中.这种方法不适用于下拉框内容经常改变的情况.因为数据源和javascript程序写死在同一页面.   <html><head><title>List</title><meta http-equiv="Content-Type" content="text/ht

javascript调用ActiveX接口失败的解决方案及使用心得

前段时间公司做了个比较大的项目,需要用到ocx控件,我厂大部分项目都采用C#.net,而winform程序条用ocx控件接口是相对简单的,但是javascript调用ocx接口,却和winform的用法有些不同,其实真捉摸下,也就能发现:差别不大. 笔者此次主要阐述在项目中用javascript调用ocx控件接口,也就是activeX控件时所遇到的问题及其解决方案.winform用法不在此篇中阐述. 调用activeX插件前,我们要做一些准备工作,我们介绍两种方案: 1.使用regsvr32 命

Javascript 调用XML制作连动下拉框

javascript|xml|下拉 传统的HTML页面中连动下拉框采用了两种方法:1)直接将下拉框中的内容hardcode于html的javascript中,调用javascript函数循环写入下拉框中.这种方法不适用于下拉框内容经常改变的情况.因为数据源和javascript程序写死在同一页面.   <html><head><title>List</title><meta http-equiv="Content-Type" con

网页页面中如何用Javascript调用Flash动画?

flash动画|javascript|网页|页面 问:网页页面中如何用Javascript调用Flash动画? 答: 在<HEADE>区加入  程序代码 <script src="js/flash.js" type="text/javascript"></script> 在调用FLASH处加入  程序代码 <script language="JavaScript" type="text/java