欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

PHP开发常用的几个js插件

程序员文章站 2024-02-20 19:54:22
...

                             省市县 三级联动 distpicker


github下载地址

https://github.com/fengyuanchen/distpicker

引入

<script src="https://cdn.bootcss.com/jquery/2.2.2/jquery.min.js"></script>
<script src="js/distpicker.js"></script>

使用
<div data-toggle="distpicker">
  <select ></select>
  <select></select>
  <select></select>
</div>

使用  初始化
<div data-toggle="distpicker">
  <select ></select>
  <select></select>
  <select></select>
</div>

或者

$("#distpicker").distpicker({});
修改默认的设置
<div data-toggle="distpicker">
  <select data-province="山东省"></select>
  <select data-city="青岛市"></select>
  <select data-district="黄岛区"></select>
</div>

或者

$("#distpicker").distpicker({
  province: '福建省',
  city: '厦门市',
  district: '思明区'
});

只显示省
<div data-toggle="distpicker">
  <select data-province="山东省“ ></select>
</div>

显示省市
<div data-toggle="distpicker">
  <select data-province="山东省"></select>
  <select data-city="青岛市"></select>
</div>

显示省市区
<div data-toggle="distpicker">
  <select data-province="山东省"></select>
  <select data-city="青岛市"></select>
  <select data-district="黄岛区"></select>
</div>

数据回显
$.get('http://www.lampol.com/7-23/index.php',{},function(data){
$("#distpicker").distpicker({
  province: data.pro,
  city: data.city,
  district: data.dis
});
},'json');

 

                                             弹出框layer 


     

官网下载

<script src="https://cdn.bootcss.com/jquery/2.2.2/jquery.min.js"></script>
<script src="layer/layer.js"></script>

开始使用
layer.alert(‘酷毙了’, {icon: 1},function(){});

第一个参数 提示文字
第二个参数配置 json格式  

icon   图标  1-6
closeBtn  有上的关闭按钮  0  或者  1
anim   动画效果  1---
time  事件 毫秒
title 标题

第三个参数  

回调函数

layer.msg用法差不多
layer.load(1); //风格1的加载
layer.confirm('确定要删除吗??',{btn:['去顶',"求奥"],title:'确定删除吗'},function(index){
console.log('hhh');
layer.close(index)
},function(){
console.log('bueyi');
});

layer.tips('只想提示地精准些', '#i',{tips: [1, '#3595CC']});
layer.open({})
Type

0(信息框,默认)1(页面层)2(iframe层)3(加载层)4(tips层)。

Title

title: ['文本', 'font-size:18px;'],数组第二项可以写任意css样式;如果你不想显示标题栏,你可以title: false

content - 内容
skin - 样式类名
area - 宽高  ['500px','600px']
offset: ['100px', '50px']  上左
btn - 按钮
btn:['确定','取消'],
btn1:function(){
alert('1');
},
btn2:function(){
return false;
},
cancel:function(){
layer.alert('cancel');
}

closeBtn  1或者2  默认1
shade - 遮罩   默认:0.3
shadeClose - 是否点击遮罩关闭 默认false
time - 自动关闭所需毫秒  默认不会自动关闭
anim - 弹出动画 默认0   0-6

tab 标签
    layer.tab({
      area: ['600px', '300px'],
      tab: [{
        title: 'TAB1',
        content: '内容1'
      }, {
        title: 'TAB2',
        content: '内容2'
      }, {
        title: 'TAB3',
        content: '内容3'
      }]
    });

 

                                      日期插件 laydate


下载    (http://www.layui.com/laydate/)

引入

<script src="laydate/laydate.js"></script>

小试牛刀
<input type="text" class="layui-input" id="test"><script>

laydate.render({
elem: '#test' //指定元素
});

通过核心方法:laydate.render(options)
elem - 绑定元素  ‘元素节点’
type - 控件选择类型  默认date
range - 开启左右面板范围选择  默认false   true/false
format - 自定义格式
yyyy年MM月dd日 HH时mm分ss秒
value - 初始值  默认当前时间
btns - 工具按钮  默认值:['clear', 'now', 'confirm']
theme - 主题  default(默认简约)、molv(墨绿背景)、#颜色值(自定义颜色背景)、grid(格子主题)

calendar - 是否显示公历节日
mark - 标注重要日子
value  默认值

控件选择完毕后的回调
done:function(value,date){
}

                     富文本编辑器ueditor以及wangEditor


ueditor
http://ueditor.baidu.com/website/download.html

目录介绍
    dialogs: 弹出对话框对应的资源和JS文件
    lang: 编辑器国际化显示的文件
    php或jsp或asp或net: 涉及到服务器端操作的后台文件
    themes: 样式图片和样式文件
    third-party: 第三方插件(包括代码高亮,源码编辑等组件)
    ueditor.all.js: 开发版代码合并的结果,目录下所有文件的打包文件
    ueditor.all.min.js: ueditor.all.js文件的压缩版,建议在正式部署时采用
    ueditor.config.js: 编辑器的配置文件,建议和编辑器实例化页面置于同一目录
    ueditor.parse.js: 编辑的内容显示页面引用,会自动加载表格、列表、代码高亮等样式,具体看内容展示文档
    ueditor.parse.min.js: ueditor.parse.js文件的压缩版,建议在内容展示页正式部署时采用

引入文件

<link href="themes/default/css/umeditor.css"type="text/css" rel="stylesheet">
<script type="text/javascript" src="third-party/jquery.min.js"></script>    
<script type="text/javascript" charset="utf-8" src="umeditor.config.js"></script>    
<script type="text/javascript" charset="utf-8" src="umeditor.min.js"></script>    
<script type="text/javascript" src="lang/zh-cn/zh-cn.js"></script>
<script type="text/plain" id="myEditor" style="width:1000px;height:240px;">



实例化调用
var um =  UM.getEditor('myEditor');

定制工具栏图标
两种修改方式

1. 方法一:修改 ueditor.config.js 里面的 toolbar
2. 方法二:实例化编辑器的时候传入 toolbar 参数

toolbar: [
    ['fullscreen', 'source', 'undo', 'redo', 'bold’]
]

var um = UM.getEditor('editor',{
toolbar: [
'fullscreen', 'source', 'undo', 'redo
]
});

其他配置
autoHeightEnabled: false,  禁止自动增高 出现滚动条  默认true
initialFrameWidth:1000  //初始化编辑器宽度,默认1000
initialFraeHeight:320  //初始化编辑器高度,默认320

修改图片上传的目录位置
php/imageUp.php 文件

 

                                        wangEditor



下载 引入
http://www.wangeditor.com/index.html

<script type="text/javascript" src="wangEditor.min.js"></script>
 <div id="div1">
    <p>欢迎使用 wangEditor 富文本编辑器</p>
  </div>


 var E = window.wangEditor
 var editor = new E('#div1’)
 editor.create()

设置菜单栏
  var E = window.wangEditor
    var editor = new E('#div1')
editor.customConfig.menus = [
        'head',
        'bold',
        'italic',
        'underline',
'image',
'code'
    ]
    editor.create()
 
上传图片

editor.customConfig.uploadImgServer = ‘upload.php’  //设置上传文件
editor.customConfig.uploadImgMaxSize = 3 * 1024 * 1024 //限制图片大小3m
editor.customConfig.uploadFileName = ‘file’ //设置上传文件的文件名

返回数据格式 json  格式 
{
    // errno 即错误代码,0 表示没有错误。
    //       如果有错误,errno != 0,可通过下文中的监听函数 fail 拿到该错误码进行自定义处理
    "errno": 0,
    // data 是一个数组,返回若干图片的线上地址
    "data": [
        "图片1地址",
        "图片2地址",
        "……"
    ]
}

获取编辑器内容数据
editor.txt.html()
editor.txt.text()

                                    图片上传webuploader


下载安装最新版本
https://github.com/fex-team/webuploader/releases
 

引入
<link rel="stylesheet"  href="webuploader.css"  />
<script src="https://cdn.bootcss.com/jquery/3.3.1/jquery.min.js"></script>
<script type="text/javascript" src="webuploader.min.js"></script>

<div id="uploader-demo">
    <!--用来存放item-->
    <div id="fileList" class="uploader-list"></div>
    <div id="filePicker">选择图片</div>
</div>

初始化
var uploader = WebUploader.create({
    // 选完文件后,是否自动上传。
    auto: true,
    // swf文件路径
    swf: 'Uploader.swf',
    // 文件接收服务端。
    server: 'upload.php',

    // 选择文件的按钮。可选。
    // 内部根据当前运行是创建,可能是input元素,也可能是flash.
    pick: '#filePicker',

    // 只允许选择图片文件。
    accept: {
        title: 'Images',
        extensions: 'gif,jpg,jpeg,bmp,png',
        mimeTypes: 'image/*'
    }
})

缩略图
$list = $('#uploader-demo');
// 当有文件添加进来的时候
uploader.on( 'fileQueued', function( file ) {
    var $li = $(
            '<span id="' + file.id + '" class="file-item thumbnail">' +
                '<img>' +'<span class="info">' + file.name + '</span>' +
            '</span>'
            ),
        $img = $li.find('img');
    // $list为容器jQuery实例
    $list.append( $li );
var thumbnailWidth = '100'
var thumbnailHeight='100'
    // 创建缩略图
    // 如果为非图片文件,可以不用调用此方法。
    // thumbnailWidth x thumbnailHeight 为 100 x 100
    uploader.makeThumb( file, function( error, src ) {

        if ( error ) {
            $img.replaceWith('<span>不能预览</span>');
            return;
        }
        $img.attr( 'src', src );
    }, thumbnailWidth, thumbnailHeight );
});

auto {Boolean} [可选] [默认值:false]
设置为 true 后,不需要手动调用上传,有文件选择即开始上传。

手动点击上传
<input type="submit" value="开始上传" id="startUp">
$('#startUp').click(function(){
uploader.upload();
})

 fileVal {Object} [可选] [默认值:'file']设置文件上传域的name。
pick: {
id:'#sel_file',  //指定选择文件的按钮容器,不指定则不创建按钮
innerHTML:'上传图片', //指定按钮文字。不指定时优先从指定的容器中看是否自带文字。
multiple:false  //是否开起同时选择多个文件能力。  默认开启
},

accept: {
        title: 'Images',
        extensions: 'gif,jpg,jpeg,bmp,png',
        mimeTypes: 'image/*'
}
    title {String} 文字描述
    extensions {String} 允许的文件后缀,不带点,多个用逗号分割。
    mimeTypes {String} 多个用逗号分割。
    
 fileSingleSizeLimit {int} [可选] [默认值:undefined] 验证单个文件大小是否超出限制, 超出则不允许加入队列。
上传的几种状态
//文件上传的进度
uploader.on( 'uploadProgress', function( file, percentage ) {
   console.log('uploadProgress');
});

// 文件上传成功,给item添加成功class, 用样式标记上传成功。
uploader.on( 'uploadSuccess', function( file,data ) {
     console.log(data);
});

// 文件上传失败,显示上传出错。
uploader.on( 'uploadError', function( file ) {
    console.log('uploadError');
});

// 完成上传完了,成功或者失败,先删除进度条。
uploader.on( 'uploadComplete', function( file ) {
    console.log('uploadComplete');
});

                                  表单验证插件validForm


下载引入

<link rel="stylesheet"  href="style.css"  />
<script src="https://cdn.bootcss.com/jquery/3.3.1/jquery.min.js"></script>
<script type="text/javascript" src="Validform_v5.3.2_min.js"></script>
   
<form id="form" >
      <input type="text" name="username" datatype="s2-5"   />
     <input type="submit" value="提交">
</form>

 <script type="text/javascript">
$(“#form").Validform();
</script>

常见的几个设置属性
nullmsg
当表单元素值为空时的提示信息,不绑定,默认提示"请填入信息!"。
如:nullmsg="请填写用户名!"
5.3版开始,对于没有绑定nullmsg的对象,会自动查找class为Validform_label下的文字作为提示文字:

errormsg
输入内容不能通过验证时的提示信息,默认提示"请输入正确信息!"。
如:errormsg="用户名必须是2到4位中文字符!"

ignore
绑定了ignore="ignore"的表单元素,在有输入时,会验证所填数据是否符合datatype所指定数据类型,
没有填写内容时则会忽略对它的验证;

sucmsg  用户输入通过验证提示的

datatype
内置基本的datatype类型有: * | *6-16 | n | n6-16 | s | s6-18 | p | m | e | url
*:检测是否有输入,可以输入任何字符,不留空即可通过验证;
*6-16:检测是否为6到16位任意字符;
n:数字类型;  number
n6-16:6到16位数字;
s:字符串类型;
s6-18:6到18位字符串;
p:验证是否为邮政编码;
m:手机号码格式;
e:email格式;
url:验证字符串是否为网址。

自定义datatype
$('#form').Validform({
datatype:{
mobile:/^1[3|5|7|8]\d{9}$/
}
});

datatype=“mobile|e”  //多种验证 或
tiptype 提示框  可用的值有:1、2、3、4和function函数,默认tiptype为1
错误提示

tiptype不为1时,Validform会查找class为"Validform_checktip"的标签显示提示信息。tiptype=1时,会自动创建弹出框显示提示信息。

1=> 自定义弹出框提示;
2=> 侧边提示(会在当前元素的父级的next对象的子级查找显示提示信息的对象,表单以ajax提交时会弹出自定义提示框显示表单提交状态);
3=> 侧边提示(会在当前元素的siblings对象中查找显示提示信息的对象,表单以ajax提交时会弹出自定义提示框显示表单提交状态);
4=> 侧边提示(会在当前元素的父级的next对象下查找显示提示信息的对象,表单以ajax提交时不显示表单的提交状态);

ajaxurl
指定ajax实时验证的后台文件的地址。
后台页面如valid.php文件中可以用 $_POST["param"] 接收到值,Ajax中会POST过来变量param和name。param是文本框的值,name是文本框的name属性。

成功 返回
{“info”:“信息","status":"y"}

失败返回
{“info”:“信息”,”status”:”n"}

recheck
表单里面经常需要检查两次密码输入是否一致,recheck就是用来指定需要比较的另外一个表单元素。
如:recheck="password1",那么它就会拿当前元素的值跟该表单下,name为"password1"的元素比较。

注意比较的两个表单都要加datatype

密码强度插件
<link rel="stylesheet"  href="css/demo.css"  />
<script type="text/javascript" src="passwordStrength/passwordStrength-min.js"></script>

plugin="passwordStrength"

tipSweep
可用值: true | false。

默认为false, 5.3版中做了修正,在各种tiptype下, 为true时提示信息将只会在表单提交时触发显示,各表单元素blur时不会触发信息提示;

showAllError
可用值: true | false。

默认为false,true:提交表单时所有错误提示信息都会显示;false:一碰到验证不通过的对象就会停止检测后面的元素,只显示该元素的错误信息;

ajaxPost
可用值: true | false。默认为false,使用ajax方式提交表单数据,将会把数据POST到config方法或表单action属性里设定的地址;

postonce
可用值: true | false。
默认为false,指定是否开启二次提交防御,true开启,不指定则默认关闭;
为true时,在数据成功提交后,表单将不能再继续提交

 

相关标签: jquery