$.ajax()实现简单计算器
1、html页面 a.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>calculate</title>
</head>
<body>
<input type = "text" name="num1" id="num1">
<select name = "select" id="select">
<option value="+" >+</option>
<option value="-" >-</option>
<option value="*" >*</option>
<option value="/" >/</option>
</select>
<input type = "text" name="num2" id="num2" >
<input type = "submit" name = "submit" id="submit" value="=">
<input type = "text" name="result" id='result' placeholder="结果显示">
<script src="jquery.min.js"></script>
<script type="text/javascript">
$('#submit').click(function(){
var data={'num1':$('#num1').val(),'num2':$('#num2').val(),'select':$("#select").val()};
$.ajax({
type:'get',
url:'a.php',
data:data,
dataType:'json',
success:function(data){
$('#result').val(data);
},
error:function(error){
alert('no');
}
});
});
</script> </body>
</html>
2、php页面 a.php
<?php
$data=$_GET;
$num1=$data['num1'];
$num2=$data['num2'];
$select=$data['select'];
if(is_numeric($num1) && is_numeric($num2)){
switch($select){
case '+':
$result=$num1+$num2;break;
case '-':
$result=$num1-$num2;break;
case '*':
$result=$num1*$num2;break;
case '/':
$result=$num1/$num2;break;
}
} echo json_encode($result);
随机推荐
- 聊聊ThreadLocal原理以及使用场景-JAVA 8源码
相信很多人知道ThreadLocal是针对每个线程的,但是其中的原理相信大家不是很清楚,那咱们就一块看一下源码. 首先,我们先看看它的set方法.非常简单,从当前Thread中获取map.那么这个ge ...
- Offcanvas 自适应窗口示例
<!DOCTYPE html><html lang="zh-CN"><head> <meta charset="UTF-8&qu ...
- PHP面向对象编程基本原则
首先祝大家节日快乐!!! 额,不知道你们剁手没,小梦是没有!整整已经错过了第九个年头! 小伙伴是不是有一种感觉,PHP入门的时候简直爱不释手,总是把 "PHP是世界上最好的语言" ...
- cookie/session(过时的写法)
cookie存在客户端的浏览器中,不太安全,容易被窃取,,session被存在服务器中(类似于字典中的value,),服务器会给浏览器返回这个value的key值,下次进来直接根据key取value. ...
- Mac从零配置Vim
// 这是一篇导入进来的旧博客,可能有时效性问题. 1. 安装Homebrew (包管理器,用来安装Vim)& /usr/bin/ruby -e "$(curl -fsSL http ...
- MATLAB命令大全+注释小结
一.常用对象操作:除了一般windows窗口的常用功能键外.1.!dir 可以查看当前工作目录的文件. !dir& 可以在dos状态下查看.2.who 可以查看当前工作空间变量名, ...
- init和plus(编码中遇到问题就看这里)
转自:http://ask.dcloud.net.cn/article/165 编码中遇到问题就看这里: http://uikoo9.com/book/chapterDetail/4 plus初始化原 ...
- Linux-vmware tools安装与cdrom挂载(转)
昨天想直接复制虚拟机centos系统中命令行的内容到主机的txt文档上进行保存,发现不能实现虚拟机与主机之间的直接通讯,后来查资料发现原来是由于我的虚拟机没有安装vwmare tools的缘故. 一个 ...
- volatile 与 synchronized 区别
在Java中,为了保证多线程读写数据时保证数据的一致性,可以采用两种方式: 同步 如用synchronized关键字,或者使用锁对象. volatile 使用volatile关键字用一句话概括vola ...
- [国嵌攻略][054][NandFlash驱动设计_写]
Nand Flash支持按页写和随机写两种方式,在下面实现的是按页写.闪存在写数据时,只能写入1,不能写入0,所以写函数必须和擦除函数一起使用,并且擦除函数是按块擦除. /************** ...