计算器和ajax部分:

  1. <?php
  2. /**
  3. * Created by PhpStorm.
  4. * User: Administrator
  5. * Date: 16-9-2
  6. * Time: 上午9:20
  7. *
  8. * 计算器_GET
  9. *
  10. */
  11.  
  12. ?>
  13. <script type="text/javascript">
  14.  
  15. function loadXMLDoc(){
  16.  
  17. var xmlhttp;
  18. if(window.XMLHttpRequest)
  19. xmlhttp=new XMLHttpRequest(); //IE7+ FF GG
  20. else
  21. xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");//IE5 6
  22.  
  23. xmlhttp.onreadystatechange=function(){
  24.  
  25. if(xmlhttp.readyState==4 && xmlhttp.status==200){
  26. //alert(xmlhttp.responseText);
  27. document.getElementById("result").value=xmlhttp.responseText;
  28. }
  29.  
  30. }
  31.  
  32. data1=document.getElementById("val1").value;
  33. dtype=document.getElementById("vtp").value;
  34. data2=document.getElementById("val2").value;
  35.  
  36. xmlhttp.open("GET","test.php?data1="+data1+"&dtype="+dtype+"&data2="+data2, true);
  37. xmlhttp.send();
  38.  
  39. }
  40.  
  41. </script>
  42.  
  43. <p>
  44.  
  45. <input type="text" name="val1" id="val1">
  46.  
  47. <select name="vtp" id="vtp">
  48. <option value="add">+</option>
  49. <option value="sub">-</option>
  50. <option value="mul">*</option>
  51. <option value="del">/</option>
  52. </select>
  53.  
  54. <input type="text" name="val2" id="val2">
  55.  
  56. <button id="calcBtn" onclick="loadXMLDoc()">=</button>
  57.  
  58. <input type="text" name="result" id="result">
  59.  
  60. </p>

  运算部分:

  1. <?php
  2.  
  3. $data1=floatval($_GET['data1']);
  4.  
  5. $dtype=$_GET['dtype'];
  6.  
  7. $data2=floatval($_GET['data2']);
  8.  
  9. if($dtype!="add" && $dtype!="sub" && $dtype!="mul" && $dtype!="del")
  10. die("error");
  11.  
  12. if(empty($data1) || empty($data2))
  13. die("error");
  14.  
  15. if($dtype=="del" && $data2==0)
  16. die("0");
  17.  
  18. $rwt=0;
  19.  
  20. switch($dtype){
  21.  
  22. case "add":
  23. $rwt=$data1 + $data2;
  24. break;
  25.  
  26. case "sub":
  27. $rwt=$data1 - $data2;
  28. break;
  29.  
  30. case "mul":
  31. $rwt=$data1 * $data2;
  32. break;
  33.  
  34. case "del":
  35. $rwt=$data1 / $data2;
  36. break;
  37.  
  38. default:
  39. $rwt=0;
  40. }
  41.  
  42. echo $rwt;

实现效果:

利用javascript、php和ajax实现计算器的更多相关文章

  1. javascript实现原生ajax的几种方法介绍

    自从javascript有了各种框架之后,比如jquery,使用ajax已经变的相当简单了.但有时候为了追求简洁,可能项目中不需要加载jquery这种庞大的js插件.但又要使用到ajax这种功能该如何 ...

  2. 利用javascript和WebGL绘制地球 【翻译】

    利用javascript和WebGL绘制地球 [翻译] 原翻译:利用javascript和WebGL绘制地球 [翻译] 在我们所有已知的HTML5API中,WebGL可能是最有意思的一个,利用这个AP ...

  3. JavaScript实例技巧精选(10)—计算器实例2

    >>点击这里下载完整html源码<< 这是截图: 利用Javascript和html实现的另一个计算器实例,核心代码如下: <script language=" ...

  4. JavaScript实例技巧精选(9)—计算器实例1

    >>点击这里下载完整html源码<< 这是截图: 利用Javascript和html实现的一个计算器实例,核心代码如下: <script language="J ...

  5. javascript进阶之AJAX

    AJAX 一 AJAX预备知识:json进阶 1.1 什么是JSON? JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.JSON是用字符串来表示Javas ...

  6. 用javascript写原生ajax(笔记)

    AJAX  的全名叫做  Asynchronous JavaScript and XML(异步的 JavaScript 和 XML).它最大的优点是在不重新加载整个页面的情况下,可以与服务器交换数据并 ...

  7. 利用JavaScript将页面截图生成图片传给后台的插件:html2canvas

    利用JavaScript将页面截图生成图片传给后台的插件:html2canvas 一.总结 一句话总结: 10 <script type="text/javascript"& ...

  8. 利用javascript:void(0)制作假的提交按钮替代button

    在写html页面,我们很自然的在表单提交的地方采用button来作为提交按钮,但是,用<button type=”button”>按钮</button>作为提交代码会有个问题, ...

  9. JavaScript JSON 与 AJAX

    JavaScript JSON 与 AJAX JSON 是一种轻量的数据交互格式,与 AJAX 配合完成前端页面与服务端的信息传递,本文介绍 JSON 的使用.原生 AJAX 写法.JSONP 跨域解 ...

  10. 利用Javascript判断操作系统的类型实现不同操作系统下的兼容性

    原文地址 http://www.jb51.net/article/33640.htm 在通过Javascript实现客户端和服务端的交互时,有时候需要对操作系统进行判断,以便实现不同操作系统下的兼容性 ...

随机推荐

  1. Cocos2d-JS项目之四:UI界面的优化

    测试环境: iphone4.iOS6.1.2.chrome 37.2062.60,Cocos2d-js 3.6 之前写了不少,实际项目也按这个去优化了,也有效果,但到最后才发现,尼玛,之前都搞错了,之 ...

  2. HP原装硒鼓

  3. cocos2d ios 环境搭建

    一.下载cocos2d-x http://cocos2d-x.org/projects/cocos2d-x/wiki/Download cocos2d-x-2.1.4.zip @ June.18, 2 ...

  4. 基于soapUI构建WebService测试框架

    基于soapUI构建WebService测试框架 http://www.docin.com/p-775523285.html

  5. 字符集与Mysql字符集处理(二)

    接着上篇文章继续讲字符集的故事.这一篇文章主要讲MYSQL的各个字符集设置,关于基础理论部分,参考于这里.   1. MYSQL的系统变量 – character_set_server:默认的内部操作 ...

  6. Visual Studio 2010 简体中文旗舰、专业版(MSDN原版下载)

    Visual Studio 2010 简体中文旗舰.专业版(MSDN原版下载)(Visual Studio 2010 ultimate professional x86 dvd)2010[光盘镜像]- ...

  7. Java hashCode() 和 equals()的若干问题解答

    本章的内容主要解决下面几个问题: 1 equals() 的作用是什么? 2 equals() 与 == 的区别是什么? 3 hashCode() 的作用是什么? 4 hashCode() 和 equa ...

  8. IconVault – 创建自定义图标字体的神器推荐

    图标字体简单来说就是外观呈现为图标的字体,同时具有矢量图形的特征,在不同的设备上使用图标的时候就不用加载不同尺寸的图片文件,能够减少 HTTP 请求数,提高页面加载速度. IconVault 这款在线 ...

  9. 测试Flask应用_学习笔记

    源代码尽在我的github上面:https://github.com/521xueweihan 欢迎大家交流学习 """ setUp() 方法中会创建一个新的测试客户端并 ...

  10. 字符串js编码转换成实体html编码的方法(防范XSS攻击)

    js代码在html页面中转换成实体html编码的方法一: <!DOCTYPE html><html> <head>    <title>js代码转换成实 ...