做一个小功能时使用到的一点技术点记录下来:

1.在js中使用定时器:

这两个方法都可以用来实现在一个固定时间段之后去执行JavaScript。不过两者各有各的应用场景。

方 法

实际上,setTimeout和setInterval的语法相同。它们都有两个参数,一个是将要执行的代码字符串,还有一个是以毫秒为单位的时间间隔,当过了那个时间段之后就将执行那段代码。

不过这两个函数还是有区别的,setInterval在执行完一次代码之后,经过了那个固定的时间间隔,它还会自动重复执行代码,而setTimeout只执行一次那段代码。

虽然表面上看来setTimeout只能应用在on-off方式的动作上,不过可以通过创建一个函数循环重复调用setTimeout,以实现重复的操作:

showTime();
function showTime()
{
var today = new Date();
alert( " The time is: " + today.toString());
setTimeout( " showTime() " , 5000 ); // 每隔5秒调用 showTime(),但是可以在函数中间中断
}

一旦调用了这个函数,那么就会每隔5秒钟就显示一次时间。

setInterval( " showTime() " , 5000 ); // 每隔5秒执行showTime()
function showTime()
{
var today = new Date();
alert( " The time is: " + today.toString());
}

参考连接:http://jun1986.iteye.com/blog/1025965

setTimeout实现页面加载后一段时间内执行某一方法:

    myInterval();
function myInterval() {
if($("#loadFinishedFlag").val() != "success") {
setTimeout(myInterval, 500);
} else {
executePerSecond(0);
}
} function executePerSecond(executeSqlNumber) {
var length = $("[id^='projectSqlResult']").length;
if(executeSqlNumber < length) {
var result = $("[id^='projectSqlResult']")[executeSqlNumber];
var projectId = $(result).attr("id").split("_")[1];
var sqlId = $(result).attr("id").split("_")[2];
$(result).text("SQL正在执行中,请稍等……");
executeSqlByAjax(projectId, sqlId);
executeSqlNumber++;
setTimeout(function () {
executePerSecond(executeSqlNumber);
}, parseInt($(
"#executeSqlInterval").val()) * 1000);
}
}

执行带参数的setTimeout,setTimeout(function() {method(params);}, 1000)

2.在js中取得字符串后转json的两种方式:

-转换方式需要加(): testJson = eval("(" + testJson + ")");

-使用jquery.parseJSON()方法

3.ajax调用:

$.ajax({

type:"post", //请求方式

url:"./test", //发送请求地址

data:{ //发送给数据库的数据

username:$("#username").val(),

content:$("#content").val()

},

//请求成功后的回调函数有两个参数

success:function(data,textStatus){

$("#resText").html(data);

}

});

4.jquery select option操作:

$("#selectID option:last")

$("#selectID option:last")

$("#selectID option[index=1]")

$("#selectID option[value=4]")

$("#selectID option[text=5]")

参考:http://www.cnblogs.com/gengaixue/archive/2011/07/28/2119040.html

5.在某个元素里面添加子元素,比如<div>abc...这里添加</div>,使用$(element).append(subElement),元素之前添加$(element).before, 开头:$(element).prepend, 结尾$(element).after

参考:http://www.cnblogs.com/william-lin/archive/2012/08/12/2635402.html

6.取某个元素的值使用$(element).val(),取/设值元素属性值$(element).attr("name", value),

7.JQ模糊选择器:$("[id^='abc']")找id以abc开头的,

参考:http://blog.163.com/09zzy@126/blog/static/711976652012411102034165/

8.readonly, disabled属性设置:$().attr("readonly", "readonly"), $().attr("disabled", "disabled")

9.bootstrap模态框的使用(Modal), 即弹出框,引用以下

<link href="/css/bootstrap.css" rel="stylesheet">

<script src="/js/jquery-2.1.3.min.js" type="text/javascript"></script>

<script src="/js/bootstrap.js" type="text/javascript"></script>

<button class="btn btn-primary btn-lg" data-toggle="modal"

data-target="#myModal">

开始演示模态框

</button>

<!-- 模态框(Modal) -->

<div class="modal fade" id="myModal" tabindex="-1" role="dialog"

aria-labelledby="myModalLabel" aria-hidden="true">

<div class="modal-dialog">

<div class="modal-content">

<div class="modal-header">

<button type="button" class="close"

data-dismiss="modal" aria-hidden="true">

&times;

</button>

<h4 class="modal-title" id="myModalLabel">

模态框(Modal)标题

</h4>

</div>

<div class="modal-body">

在这里添加一些文本

</div>

<div class="modal-footer">

<button type="button" class="btn btn-default"

data-dismiss="modal">关闭

</button>

<button type="button" class="btn btn-primary">

提交更改

</button>

</div>

</div><!-- /.modal-content -->

</div><!-- /.modal -->

参考连接:http://outofmemory.cn/bootstrap/tutorial/bootstrap-modal-plugin.html

http://www.runoob.com/bootstrap/bootstrap-modal-plugin.html

10.删除数据:delete,使用where条件,删除所有、使用truncate删除所有

11.对某个元素的子元素查的:$(element).find("label"),查找element下面的label子元素

12.ajax提供数据时遇到中文乱码:在客户端使用encordURI("文字"),在服务器端使用URLDecoder.decode("文字", "UTF-8"),使用ajax请求时提交数据可能默认使用的UTF-8

[Javascript] 前端随笔的更多相关文章

  1. JavaScript前端框架的思考

    (此文章同时发表在本人微信公众号"dotNET每日精华文章",欢迎右边二维码来关注.) 题记:现在JavaScript前端框架层出不穷,尤其Angular进入到2.x时候之后,我们 ...

  2. JavaScript前端和Java后端的AES加密和解密

    在实际开发项目中,有些数据在前后端的传输过程中需要进行加密,那就需要保证前端和后端的加解密需要统一.这里给大家简单演示AES在JavaScript前端和Java后端是如何实现加密和解密的. 直接上代码 ...

  3. 我发起并创立了一个 Javascript 前端库 开源项目 jWebForm

    在线演示地址: ( 在线演示 云平台 由 Kooboo 提供  https://www.kooboo.com/ ) 按钮:      http://iwebform.kgeking.kooboo.si ...

  4. JavaScript前端和Java后端的AES加密和解密(转)

    在实际开发项目中,有些数据在前后端的传输过程中需要进行加密,那就需要保证前端和后端的加解密需要统一.这里给大家简单演示AES在JavaScript前端和Java后端是如何实现加密和解密的. java端 ...

  5. 前端随笔 - JavaScript中的闭包

    前阵子重新复习了一下js基础知识,第一篇博客就以分享闭包心得为开始吧. 首先,要理解闭包,就必须要了解一个概念:作用域链. 作用域链 作用域代表着可访问变量的集合,变量分为全局变量和局部变量两种,在函 ...

  6. [前端随笔][JavaScript] 制作一个富文本编辑器

    写在前面 现在网上有很多现成的富文本编辑器,比如百度家的UEditor,kindeditor,niceditor等等,功能特别的多,API也很多,要去熟悉他的规则也很麻烦,所以想自己了解一下原理,做一 ...

  7. [前端随笔][JavaScript][自制数据可视化] “中国地图”

    说在前面 想自己实现一个可视化的中国地图(可以实现如用户来源省份数据统计功能),网上搜了一下,翻了几页几乎都是第三方库(如echarts.js)实现的,简直不能忍. 不是第三方库不好,只是要花时间去适 ...

  8. Javascript前端和JAVA后端对加密库的处理实例

    前端加密 Javascript的加解密有开源的库,http://www.oschina.net/p/crypto-js/ 如下是具体的使用例子 <!DOCTYPE html> <ht ...

  9. 常用html、CSS、javascript前端命名规范

    无论是从技术角度还是开发视角,对于web前端开发规范文档都有一定规范,本文就css3和html5的发展前景总结了一系列的web开发文档,仅供大家参考. 规范目的: 为提高团队协作效率, 便于后台人员添 ...

随机推荐

  1. JavaScript 中 Number()、parseInt()、parseFloat()的区别

    Number(): 概述:Number 对象由 Number() 构造器创建,是经过封装的能让你处理数字值的对象.在非构造器上下文中 (如:没有 new 操作符),Number 能被用来执行类型转换. ...

  2. [Java] JSP笔记 - Filter 过滤器

    一.什么是Web过滤器 Servlet API 很久以前就已成为企业应用开发的基石,而 Servlet 过滤器则是对 J2EE 家族的相对较新的补充. Servlet 过滤器是可插入的 Web 组件, ...

  3. STM32 复合设备编写

    目的 完成一个CDC + MSC的复合USB设备 可以方便在CDC,MSC,复合设备三者间切换 可移植性强 预备知识 cube中USB只有两个入口. main函数中的MX_USB_DEVICE_Ini ...

  4. E:“图片视频”的列表页(taxonomy-cat_media.php)

    获取本页的分类ID <?php get_header(); //获取本页的分类ID $cat_title = single_cat_title('', false); //本页分类的名称 $ca ...

  5. ReportView报表开发记录(一)

    在公司开发,使用到ReportView技术,写下自己的经验. 1.在工具箱中找到 ReportViewer,ScriptManager放到test.aspx页面. 如果找不到报表项,请参考http:/ ...

  6. Demo 版

    Demo1   美食网站 Demo2   12301智慧旅游公共服务平台 Demo3   react_and_koa example

  7. MATLAB-RSP 随笔

    1.Getting Started with Signal Analyzer App 161216 (1) 在命令行中输入:signalAnalyzer. (2)在工作空间中选择要分析的信号

  8. php curl 多线程方法

    <?php /** * curl 多线程 * @param array $array 并行网址 * @param int $timeout 超时时间 * @return array */ fun ...

  9. 微信共享收货地址 edit_address:fail 吐白沫级解决方案

    又被微信坑了一整天,看完官方文档怎么测试都不通过,我一直怀疑是新版本微信支付我没有设置“共享收货地址”开关造成的. 后来经过验证,新版本不需要做这件事了. 那么,我没错,是微信的文档没及时更新... ...

  10. maven实战(03)_依赖

    (一) 依赖配置声明 包含以下的一些元素: <project> ... <dependencies> <dependency> <groupId>... ...