愁人,编程语言这个东西,学完了能常用还好点,要是不常用的话,过不了几天就忘记用法了,这不昨天在自己练习用django学工具的时候,竟然忘记了jquery中done的使用方法,但是却又很清楚的记得自己之前是用过的,就是想不起来,你说愁人不,写篇博客记录下吧。


以下样例是在YII框架下写的,在CSRF_TOKEN的地方各种框架都不尽相同:


<script type="text/javascript">

$(document).ready(function(){

$("#add").click(function(){

var start = $("#start").val();

var end = $("#end").val();

var CSRF_TOKEN = "<?= Yii::$app->getRequest()->getCsrfToken(); ?>";

var re = /^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$/;

var res = /^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$/;

if (!re.test(start)){

$("#status").html(" * ip地址格式不正确");

}else if (!res.test(end)){

$("#status").html(" * 输入不正确,请输入1-255之间的数字");

}else{

$.post('/hostmanager/addsystem/',

{

start:start,

end:end,

_csrf: CSRF_TOKEN

},null,'json').done(function(response){

if (response.status == 'RESULTS'){

var message= "<h4>" + response.message + "<h4>";

alertify.alert(message);

$(function() {

window.setTimeout(function(){

location.href="/hostmanager/";

}, 5000);

});

}else if (response.status == 'TESTCONN'){

var testconn = response.message;

document.write(testconn);

if(testconn == 1){

$('.exam').sibling('.light').css('background','green');

}else {

$('.exam').sibling('.light').css('background','red');

}

}else {

$("#status").html(" ");

}

});

};

});

});

</script>