bootstrap file input 代码

{layout name="layout" title="文章添加" /}
 <form  id="defaultForm" role="form" method="POST"  action="{:url(‘/admin/article/add/‘)}">
   <div class="form-group">
    <label for="exampleInputUsername">文章标题:</label>
    <input type="text" class="form-control" value="{present name="data.title"}{$data.title}{/present} " name="title" id="title" placeholder="请输入链接名称">
  </div>
  <div class="form-group">
    <label for="exampleInputEmail">文章分类:</label>
     <select name="type_id" id="type_id" class="form-control">
     {foreach $listType as $vo}
     <OPTION value="{$vo.id}" {present name="data.type_id "}{if condition="$data.type_id eq $vo.id"} selected="selected" {/if}{/present} >{$vo.type_name}</OPTION>
     {/foreach}
     </select>
  </div>
  <div class="form-group">
    <label for="exampleInputPassword">文章封面</label>
<input id="input-702" name="kartik-input-702[]" type="file" multiple=true class="file-loading">
  </div>

  <div class="form-group">
    <label for="exampleInputEmail">文章内容:</label>
     <TEXTAREA name="content" id="content"  class="form-control">{present name="data.content"}{$data.content}{/present}</TEXTAREA>
  </div>

  <input type="hidden" name="__token__" value="{$Request.token}" />
  <input type="hidden" name="id" id="id" value="{present name="data.id"}{$data.id}{/present}" />
  <button type="submit" class="btn btn-default">提交</button>
  <button type="reset" class="btn btn-default">重置</button>
</form>    

 <!-- 配置文件 -->
<script src="__ROOT__kindeditor/kindeditor-all.js"  type="text/javascript"></script>
<script src="__ROOT__kindeditor/lang/zh-CN.js"  type="text/javascript"></script>
<link rel="stylesheet" href="__ROOT__kindeditor/themes/default/default.css" />

 <!-- 配置文件 -->
<script src="__ROOT__bootstrap/js/fileinput.js"  type="text/javascript"></script>
<script src="__ROOT__bootstrap/js/zh.js"  type="text/javascript"></script>
<link rel="stylesheet" href="__ROOT__bootstrap/css/fileinput.css" />

<script>
KindEditor.ready(function(K) {
    editor = K.create(‘textarea[name="content"]‘, {
        allowFileManager : true
    });
    K(‘#selectImg‘).click(function() {
        editor.loadPlugin(‘image‘, function() {
            editor.plugin.imageDialog({
                imageUrl : K(‘#cover_pic‘).val(),
                clickFn : function(url, title, width, height, border, align) {
                    K(‘#cover_pic‘).val(url);
                    $(‘#link_add_img‘).attr(‘src‘,url);
                    editor.hideDialog();
                }
            });
        });
    });

});
</script>
 <script type="text/javascript">
$(document).ready(function() {
    $(‘#defaultForm‘).bootstrapValidator({
        message: ‘This value is not valid‘,
        feedbackIcons: {
            valid: ‘glyphicon glyphicon-ok‘,
            invalid: ‘glyphicon glyphicon-remove‘,
            validating: ‘glyphicon glyphicon-refresh‘
        },
        fields: {
            title: {
                message: ‘The title is not valid‘,
                validators: {
                    notEmpty: {
                        message: ‘名称必须填写‘
                    },
                    stringLength: {
                        min: 2,
                        max: 30,
                        message: ‘名称最短2个字最长30个字‘
                    },
                }
            },

            content: {
                message: ‘The content is not valid‘,
                validators: {
                    notEmpty: {
                        message: ‘内容必须填写‘
                    },
                }
            },
        }
    });
});

$(function(){
    $.ajax({
       type : "post",
       url : "/admin/article/listPic",
       dataType : "json",
       success : function(data) {
        showPhotos(data);
       },
       error: function(XMLHttpRequest, textStatus, errorThrown) {
              layer.msg(‘操作失败!‘);
                   }
   });  

  });  

function showPhotos(djson){
    //后台返回json字符串转换为json对象
    var reData = eval(djson);
    // 预览图片json数据组
    var preList = new Array();
    for ( var i = 0; i < reData.length; i++) {
       var array_element = reData[i];
       // 图片类型
       preList[i]= "<img src=\""+array_element.img+"\" class=\"file-preview-image\">";  

    }
    var previewJson = preList;
    // 与上面 预览图片json数据组 对应的config数据
    var preConfigList = new Array();
    for ( var i = 0; i < reData.length; i++) {
       var array_element = reData[i];
       var tjson = {caption: array_element.name, // 展示的文件名
                   width: ‘120px‘,
                   url: ‘/admin/article/delPic‘, // 删除url
                   key: array_element.id, // 删除是Ajax向后台传递的参数
                   extra: {id: 100}
                   };
       preConfigList[i] = tjson;
    }
    // 具体参数自行查询
    $(‘#input-702‘).fileinput({
        uploadUrl: ‘/eim/upload/uploadFile.do‘,
        uploadAsync:true,
        showCaption: true,
        showUpload: true,//是否显示上传按钮
        showRemove: false,//是否显示删除按钮
        showCaption: true,//是否显示输入框
        showPreview:true,
        showCancel:true,
        dropZoneEnabled: false,
        maxFileCount: 10,
        initialPreviewShowDelete:true,
        msgFilesTooMany: "选择上传的文件数量 超过允许的最大数值!",
        initialPreview: previewJson,
        previewFileIcon: ‘<i class="fa fa-file"></i>‘,
        allowedPreviewTypes: [‘image‘],
        previewFileIconSettings: {
            ‘docx‘: ‘<i class="fa fa-file-word-o text-primary"></i>‘,
            ‘xlsx‘: ‘<i class="fa fa-file-excel-o text-success"></i>‘,
            ‘pptx‘: ‘<i class="fa fa-file-powerpoint-o text-danger"></i>‘,
            ‘pdf‘: ‘<i class="fa fa-file-pdf-o text-danger"></i>‘,
            ‘zip‘: ‘<i class="fa fa-file-archive-o text-muted"></i>‘,
            ‘sql‘: ‘<i class="fa fa-file-word-o text-primary"></i>‘,
        },
        initialPreviewConfig: preConfigList
    }).off(‘filepreupload‘).on(‘filepreupload‘, function() {
//                                 alert(data.url);
    }).on("fileuploaded", function(event, outData) {
           //文件上传成功后返回的数据, 此处我只保存返回文件的id
           var result = outData.response.id;
           // 对应的input 赋值
           $(‘#htestlogo‘).val(result).change();
    });
}
</script>
时间: 2024-10-17 16:49:16

bootstrap file input 代码的相关文章

Bootstrap File Input的简单使用

安装引入 使用前需要引入其css和js文件, 注意引入路径的问题 <link rel="stylesheet" href="/__PUB__/fileinput/css/fileinput.css"> <script src="/__PUB__/fileinput/js/fileinput.js"></script> <script src="/__PUB__/fileinput/js/loca

bootstrap file input 官方文档翻译

file input 特性 1.这个插件会把简单的html文件变成一个更好用的文件选择输入控件,通过一个html的文件输入框,能兼容那些不支持jquery或js的浏览器. 2.fileinput 插件包括options,templates等三个部分来控制展示 .文件标题部分:用来展示选中的文件的简介信息 .文件按钮行为部分:用来浏览,移除和上传文件 .文件预览部分:用来将展示选中的文件到客户端实现预览(支持图片, 文档, flash, 和视频类型),别的文件类型将以宿略图的形式预览 3.如果你设

Bootstrap File Input 中文文档

手动安装 您也可以手动地安装插件到你的项目中.只要下载源ZIP或TAR球和提取资产(CSS和JS插件文件夹)到你的项目中. 使用 步骤1:在你页面头部加载以下类库. 1 <link href="http://netdna.bootstrapcdn.com/bootstrap/3.1.0/css/bootstrap.min.css" rel="stylesheet"> 2 <link href="path/to/css/fileinput.

bootstrap file input 实现多图上传功能

官方文档   http://plugins.krajee.com/ demo      http://plugins.krajee.com/file-input-ajax-demo/3 github资源   https://github.com/kartik-v/bootstrap-fileinput html   <input id="input-700" name="kartik-input-700[]" type="file" mul

基于Metronic的Bootstrap开发框架经验总结(5)--Bootstrap文件上传插件File Input的使用

Bootstrap文件上传插件File Input是一个不错的文件上传控件,但是搜索使用到的案例不多,使用的时候,也是一步一个脚印一样摸着石头过河,这个控件在界面呈现上,叫我之前使用过的Uploadify 好看一些,功能也强大些,本文主要基于我自己的框架代码案例,介绍其中文件上传插件File Input的使用.关于Uploadify的控件介绍,可以参考我之前的随笔介绍<基于MVC4+EasyUI的Web开发框架形成之旅--附件上传组件uploadify的使用>. 1.文件上传插件File In

Bootstrap文件上传插件File Input的使用

1.文件上传插件File Input介绍 这个插件主页地址是:http://plugins.krajee.com/file-input,可以从这里看到很多Demo的代码展示:http://plugins.krajee.com/file-basic-usage-demo. 这是一个增强的 HTML5 文件输入控件,是一个 Bootstrap 3.x 的扩展,实现文件上传预览,多文件上传等功能. 一般情况下,我们需要引入下面两个文件,插件才能正常使用: bootstrap-fileinput/css

如何让file input能够实现置空和【异步】上传后相同文件的再次选择触发change

file input出于安全角度,是不允许赋值的,即使是置空,虽然通过给innerHtml赋值可以清空,但貌似仅在ie下起使用. 因为缺少置空的方法,用户异步上传完毕文件后选择相同文件时,不会触发change,因为在这种情况下,我们没有办法使value(也就是文件路径)发生变化. 那难道就无解了么..当然不是.. 我的解决方法是,每次选完文件,就重建此元素,这样值自然是空的,因为clone不带值,这样就是一个全新的file input,每一次选择,自然各种正常.以下是关键代码: <label i

bootstrap selectpicker 通过代码指定选中值 BootStrap selectpicker后台动态绑定数据 selectpicker 获取选中option的属性或者值

bootstrap-select使用 bootstrap selectpicker 通过代码指定选中值 $('#subjectno').selectpicker('val',(row.subjectno)); row.subjectno替换成你要指定的值,当然前提必须要在select已有的数据中 selectpicker 获取选中option的属性或者值 BootStrap selectpicker后台动态绑定数据

File Inclusion 代码解析 1

File Inclusion,意思是文件包含(漏洞),是指当服务器开启allow_url_include选项时,就可以通过php的某些特性函数(include(),require()和include_once(),require_once())利用url去动态包含文件,此时如果没有对文件来源进行严格审查,就会导致任意文件读取或者任意命令执行.文件包含漏洞分为本地文件包含漏洞与远程文件包含漏洞,远程文件包含漏洞是因为开启了php配置中的allow_url_fopen选项(选项开启之后,服务器允许包