ajax+template.js实现天气预报查询

准备的文件如下:
template.js文件下载
链接:https://pan.baidu.com/s/1FOcJehGQCBfdi5fxIJjVnQ
提取码:62in
jquery-1.4.2.min.js文件
链接:https://pan.baidu.com/s/1jm8wELdaid0cGFgk66UiKA
提取码:6gvc
天气api接口
网站:https://www.kancloud.cn/ccjin/yingq/603579
接口链接:https://www.tianqiapi.com/api/

完整代码:

<!DOCTYPE html>
<html>

	<head>
		<meta charset="UTF-8">
		<title></title>
		<script type="text/javascript" src="jquery-1.4.2.min.js"></script>
		<script type="text/javascript" src="template.js"></script>
		<script type="text/html" id="weatherTemplate">
			{{each data as value i}}
			<div>
				<span>日期:{{value.date}}</span>
				<ul>
					<li>星期:{{value.week}}</li>
					<li>天气情况:{{value.wea}}</li>
					<li>白天温度:{{value.tem1}}</li>
					<li>晚上温度:{{value.tem2}}</li>
				</ul>
			</div>
			{{/each}}
		
		</script>
		<script type="text/javascript">
			window.onload = function() {
				//得到我们的btn按钮
				var btn = document.querySelector("#btn");
				//响应我们按钮的点击事件
				btn.onclick = function() {
					//找到我们的输入框
					var keywordValue = document.querySelector("#city").value;
					console.log(keywordValue);
					//使用jQuery来获取跨域的数据
					$.ajax({
						url: "https://www.tianqiapi.com/api/",
						data: {
							city: keywordValue
						},
						success: function(data) {
							console.log(data);
						},
						dataType:"jsonp",
						jsonp:"callback",
						success: function(data) {
							console.log(data);
							var html = template("weatherTemplate", data); //将数据和模板结合起来
							$("#info").html(html);

						}
					});

				}
			}
		</script>
		<style type="text/css">
			#container {
				width: 400px;
				min-height: 300px;
				background-color: yellow;
				margin: auto;
				padding: 10px;
				text-align: center;
			}
			#sousou{
				margin: 20px 0px;
			}
			ul {
				list-style: none;
				text-align: left;
			}
		</style>
	</head>

	<body>
		<div id="container">
		<div id="sousou">
		<h1>天气信息查询</h1>
		<input type="text" id="city" placeholder="请输入城市名称" />
		<input type="button" id="btn" value="查询" />
		</div>
		<div id="info">
		 
		</div>
		</div>
	</body>

</html>

效果图:
未查询之前的效果:
在这里插入图片描述
查询之后的效果:
在这里插入图片描述
在这里插入图片描述

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值