跨域的本质-动态创建 script 标签| 学习笔记

简介: 快速学习跨域的本质-动态创建 script 标签。

开发者学堂课程【Ajax 前端开发入门与实战跨域的本质-动态创建 script 标签】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/595/detail/8544


跨域的本质-动态创建 script 标签

 

一、举例

创建 weather03.html:

<script type="text/javascript">

function foo(data){

console.log(data) ;

}

</script>

<script type="text/javascript"src="http://www.lisi. com/

data.php?city=shanghai"></script>

<script type="text/javascript">

window.onload =function(){

var btn = document.querySelector("#btn");

btn.onclick = function(){

var cityName=document .querySelector("#city").value;

//动态创建 script 标签,动态制定 src 属性的值

var script = document.createElement("script" );

script.src="http://www.lisi.com/data.php?city="+ cityName;

var head = document.querySelector("head");

head.appendChild(script);

};

};

</script>

</head>

<body>

 <h1>气信息查询</h1>

<input type="text"id="city"placeholder="请输入 城市名称">

<input type="button"id="btn"value="查询">

</body>

</html>

data.php 文件:

<?php

$city = $_ GET["city"];

if($city == "beijing") {

echo "foo('北京的天气晴')";

}else {

echo "foo('没有查询到天气信息')";

}

//echo "var str = 'haha'";

?>

输入 beijing 浏览器查询输出值为:

image.png 

输入 beijing1 浏览器查询输出值为:

image.png 

通过动态创建 script 标签,动态指定 src 属性来访问外部的 php 文件。

而这个文件会根据传递过来的参数而作对应的输出,输出的内容就是 JS 的方法调用,这个方法在前端界面中已经事先定义好,通过这个方法就可以得到我们想要的数据。

相关文章
|
12月前
|
前端开发 JavaScript
前端基础 - JavaScript修改标签样式的属性值
前端基础 - JavaScript修改标签样式的属性值
57 0
|
5月前
|
JavaScript 前端开发
11.JavaScript 事件的概念以及绑定方法
11.JavaScript 事件的概念以及绑定方法
|
5月前
|
前端开发 JavaScript
前端 JS 经典:判断对象属性是否存在
前端 JS 经典:判断对象属性是否存在
68 0
|
5月前
|
JavaScript 前端开发 UED
探究: 为什么JavaScript要在body标签尾部引入?
探究: 为什么JavaScript要在body标签尾部引入?
50 0
|
12月前
|
JavaScript
JS子页面如何获取父页面的变量、对象、方法
JS子页面如何获取父页面的变量、对象、方法
169 0
|
Web App开发 缓存 JavaScript
页面访问时渲染过程中 HTML、JS 的关系
之前写过一篇关于不同 DOM 操作结果不同的文章,那篇文章只是简单的介绍了一下 HTML 及外部资源与 JS 脚本执行的一个时机,其实这个还可以再拓展一下,比如 JS 和 DOMContentLoad
|
JavaScript
js基础笔记学习214元素得属性和节点1方式1
js基础笔记学习214元素得属性和节点1方式1
69 0
js基础笔记学习214元素得属性和节点1方式1
|
JavaScript 前端开发
详细解析JavaScript中的全局属性和方法
详细解析JavaScript中的全局属性和方法 今天来补充JavaScript中的最后一部分内容,JavaScript中的全局属性和方法(函数)。 1.全局属性 // 属性 // Infinity 代表正的无穷大的数值。 // 在Javascript中,超出 1.7976931348623157E+103088 的数值即为Infinity,小于 -1.7976931348623157E+103088 的数值为无穷小。 var num1 = 1.7976931348623157E+103088; var num2 = -1.79769313486
|
JavaScript 前端开发 开发者
跨域的本质-引入外部 js 文件| 学习笔记
快速学习跨域的本质-引入外部 js 文件。
349 0