// url选择表单初始化 FromInit('form.form-validation-url-choice'); // url选择 var $url_event_obj = null; var $url_choice_popup = $('#url-choice-popup'); // 商品搜索popup容器 var $popup_themedata_goods = $('#themedata-goods-popup'); // 文章搜索popup容器 var $popup_themedata_article = $('#themedata-article-popup'); // 公共弹窗和指定数据列表 var $manual_mode_data_container_tag = null; var $manual_mode_data_container = $('ul.manual-mode-data-container'); var $data_type_auto_container = $('.data-type-auto-container'); var $data_type_appoint_container = $('.data-type-appoint-container'); // url确认回调处理 function ThemeDataUrlChoiceBackHandle(data) { // 去除空值 for(var i in data) { if(data[i] == '') { delete data[i]; } } // 赋值数据给事件对象属性 $url_event_obj.find('input').val(encodeURIComponent(CryptoJS.enc.Base64.stringify(CryptoJS.enc.Utf8.parse(JSON.stringify(data))))); // 提示文字处理 $url_event_obj.find('span').text(Object.keys(data).length == 0 ? $url_choice_popup.data('not-choice-text') : $url_choice_popup.data('already-choice-text')); // 关闭弹窗 $url_choice_popup.modal('close'); } $(function() { // url选择事件 $(document).on('click', '.url-choice-event', function() { // 记录临时事件对象 $url_event_obj = $(this); // 先赋空值 $url_choice_popup.find('input').val(''); // 数据赋值 var json = $url_event_obj.find('input').val() || null; if(json != null) { json = JSON.parse(CryptoJS.enc.Base64.parse(decodeURIComponent(json)).toString(CryptoJS.enc.Utf8)); } FormDataFill(json, $url_choice_popup); // 打开弹窗 $url_choice_popup.modal(); }); // 多图文可拖拽初始化 $('ul.manytextimages-content-container').dragsort({ dragSelector: 'a.drag-sort-submit', placeHolderTemplate: '
  • ' }); // 移除内容容器 $(document).on('click', '.manytextimages-content-container > li .content-item-remove-submit', function() { $(this).parents('li').remove(); }); // 多图文添加 $(document).on('click', '.manytextimages-content-add-submit', function() { var $obj = $('.manytextimages-content-container'); var not_choice_text = $url_choice_popup.data('not-choice-text'); var index = parseInt(Math.random() * 1000001); var html = `
  • `; $('.manytextimages-content-container').append(html); }); // 空则自动添加一条 if($('.manytextimages-content-add-submit').length > 0 && $('.manytextimages-content-container').length > 0 && $('.manytextimages-content-container li').length == 0) { $('.manytextimages-content-add-submit').trigger('click'); } // 分页初始化 if($('.popup-page-container').length > 0) { $('.popup-page-container').html(PageLibrary()); } // 数据类型事件 $(document).on('change', 'input[name="goods_data_type"], input[name="article_data_type"]', function() { if(parseInt($(this).val() || 0) == 0) { $data_type_auto_container.removeClass('am-hide'); $data_type_appoint_container.addClass('am-hide'); } else { $data_type_auto_container.addClass('am-hide'); $data_type_appoint_container.removeClass('am-hide'); } }); // 指定数据列表拖拽 $('ul.manual-mode-data-container').dragsort({ dragSelector: 'li', placeHolderTemplate: '
  • ' }); // 删除列表 $(document).on('click', '.manual-mode-data-container li button.am-close', function () { $(this).parent('li').remove(); }); // 弹窗数据列表-搜索 $(document).on('click', '.forth-selection-container .search-submit, .pagelibrary li a', function () { // 分页处理 var is_active = $(this).data('is-active') || 0; if (is_active == 1) { return false; } var page = $(this).data('page') || 1; // 请求参数 var url = $('.forth-selection-container').data('search-url'); var category_id = $('.forth-selection-form-category').val(); var keywords = $('.forth-selection-form-keywords').val(); var data_ids = []; // 已选数据 var $tag = ($manual_mode_data_container_tag == null) ? $manual_mode_data_container : $($manual_mode_data_container_tag); $tag.find('input[type="hidden"]').each(function (k, v) { data_ids.push($(this).val()); }); var $this = $(this); $.AMUI.progress.start(); if ($this.hasClass('search-submit')) { $this.button('loading'); } $('.forth-selection-list-container ul.am-gallery').html('
    ' + ($('.forth-selection-list-container').data('loading-msg')) + '
    '); $.ajax({ url: RequestUrlHandle(url), type: 'post', data: { "page": page, "category_id": category_id, "keywords": keywords, "data_ids": data_ids }, dataType: 'json', success: function (res) { $.AMUI.progress.done(); $this.button('reset'); if (res.code == 0) { $('.forth-selection-list-container').attr('data-is-init', 0); $('.forth-selection-list-container ul.am-gallery').html(res.data.data); $('.popup-page-container').html(PageLibrary(res.data.total, res.data.page_size, res.data.page, 4)); } else { Prompt(res.msg); $('.forth-selection-list-container ul.am-gallery').html('
    ' + res.msg + '
    '); } }, error: function (xhr, type) { $.AMUI.progress.done(); $this.button('reset'); var msg = HtmlToString(xhr.responseText) || (window['lang_error_text'] || '异常错误'); Prompt(msg, null, 30); $('.forth-selection-list-container ul.am-gallery').html('
    ' + msg + '
    '); } }); }); // 弹窗搜索列表-添加/删除 $(document).on('click', '.forth-selection-list-container .data-add-submit, .forth-selection-list-container .data-del-submit', function () { // 基础参数 var $this = $(this); var type = $this.data('type'); var icon_html = $this.parents('li').data((type == 'add' ? 'del' : 'add') + '-html'); var data_id = $this.parents('li').data('id'); var data_title = $this.parents('li').data('title'); var data_url = $this.parents('li').data('url'); var data_img = $this.parents('li').data('img'); var $tag = ($manual_mode_data_container_tag == null) ? $manual_mode_data_container : $($manual_mode_data_container_tag); var index = $tag.data('index') || ''; if(index != '') { index = index+'-'; } var form_name = $tag.attr('data-form-name') || ''; // 商品是否已经添加 if ($tag.find('.manual-mode-data-item-' + data_id).length > 0) { $tag.find('.manual-mode-data-item-' + data_id).remove(); } else { var img_html = ((data_img || null) == null) ? '' : ``; $tag.append(`
  • `+img_html+` `+data_title+`
  • `); } $this.parent().html(icon_html); }); // 开启商品弹窗 $(document).on('click', '.goods-popup-add', function () { // 记录当前元素位置 $manual_mode_data_container_tag = $(this).data('tag') || null; // 初始化搜索数据 $popup_themedata_goods.modal(); $popup_themedata_goods.find('.search-submit').trigger('click'); }); // 开启文章弹窗 $(document).on('click', '.article-popup-add', function () { // 记录当前元素位置 $manual_mode_data_container_tag = $(this).data('tag') || null; // 初始化搜索数据 $popup_themedata_article.modal(); $popup_themedata_article.find('.search-submit').trigger('click'); }); // 自定义数据添加 $(document).on('click', '.textimages-custom-add-submit', function() { var $obj = $('.textimages-custom-container'); var form_name = $obj.data('form-name'); var index = parseInt(Math.random() * 1000001); var not_choice_text = $url_choice_popup.data('not-choice-text'); $obj.append(`
  • `+not_choice_text+`
  • `); }); // 自定义数据移除 $(document).on('click', '.textimages-custom-container > li > button.am-close', function() { $(this).parent().remove(); }); // 商品组可拖拽初始化 $('ul.data-goods-container').dragsort({ dragSelector: 'a.drag-sort-submit', placeHolderTemplate: '
  • ' }); // 商品组合添加 $(document).on('click', '.goodsgroup-content-add-submit', function() { var $obj = $('.data-goods-container'); var not_choice_text = $url_choice_popup.data('not-choice-text'); var index = parseInt(Math.random() * 1000001); var html = `
  • `; // 图片 html += `
    `; // 文本 html += `
    `; // 商品类型 html += `
    `; var json = $obj.data('original-goods-type-list') || null; if(json != null) { var goods_type_list = JSON.parse(CryptoJS.enc.Base64.parse(decodeURIComponent(json)).toString(CryptoJS.enc.Utf8)); for(var i in goods_type_list) { html += ``; } } html += `
    `; // 品牌列表 html += `
    `; // 商品分类 html += `
    `; // 商品数量 html += `
    `; // 排序类型 html += `
    `; var json = $obj.data('original-goods-order-by-type-list') || null; if(json != null) { var goods_order_by_type_list = JSON.parse(CryptoJS.enc.Base64.parse(decodeURIComponent(json)).toString(CryptoJS.enc.Utf8)); for(var i in goods_order_by_type_list) { html += ``; } } html += `
    `; // 排序规则 html += `
    `; var json = $obj.data('original-order-by-rule-list') || null; if(json != null) { var goods_order_by_rule_list = JSON.parse(CryptoJS.enc.Base64.parse(decodeURIComponent(json)).toString(CryptoJS.enc.Utf8)); for(var i in goods_order_by_rule_list) { html += ``; } } html += `
    `; // 指定商品 html += `
      + `+$obj.data('add-goods-title')+`
      `; // 操作 html += ` `; // 数据结尾 html += `
    • `; $obj.append(html); // 多选插件事件更新 SelectChosenInit(); // 单选初始化 $obj.find('input[type="radio"]').uCheck(); }); // 商品组删除 $(document).on('click', '.data-goods-container .content-item-remove-submit', function() { $(this).parents('li').remove(); }); // 文章数据类型事件 $(document).on('change', '.data-goods-container input.goods_data_type', function() { var $obj = $(this).parents('li'); var $auto = $obj.find('.data-type-auto-container'); var $appoint = $obj.find('.data-type-appoint-container'); if(parseInt($(this).val() || 0) == 0) { $auto.removeClass('am-hide'); $appoint.addClass('am-hide'); } else { $auto.addClass('am-hide'); $appoint.removeClass('am-hide'); } }); // 文章组可拖拽初始化 $('ul.data-article-container').dragsort({ dragSelector: 'a.drag-sort-submit', placeHolderTemplate: '
    • ' }); // 文章组合添加 $(document).on('click', '.articlegroup-content-add-submit', function() { var $obj = $('.data-article-container'); var not_choice_text = $url_choice_popup.data('not-choice-text'); var index = parseInt(Math.random() * 1000001); var html = `
    • `; // 图片 html += `
      `; // 文本 html += `
      `; // 数据类型 html += `
      `; var json = $obj.data('original-article-type-list') || null; if(json != null) { var article_type_list = JSON.parse(CryptoJS.enc.Base64.parse(decodeURIComponent(json)).toString(CryptoJS.enc.Utf8)); for(var i in article_type_list) { html += ``; } } html += `
      `; // 数据类型选择容器 开始 html += `
      `; // 自动读取 html += `
      `; //文章分类 html += `
      `; // 文章数量 html += `
      `; // 排序类型 html += `
      `; var json = $obj.data('original-article-order-by-type-list') || null; if(json != null) { var article_order_by_type_list = JSON.parse(CryptoJS.enc.Base64.parse(decodeURIComponent(json)).toString(CryptoJS.enc.Utf8)); for(var i in article_order_by_type_list) { html += ``; } } html += `
      `; // 排序规则 html += `
      `; var json = $obj.data('original-order-by-rule-list') || null; if(json != null) { var article_order_by_rule_list = JSON.parse(CryptoJS.enc.Base64.parse(decodeURIComponent(json)).toString(CryptoJS.enc.Utf8)); for(var i in article_order_by_rule_list) { html += ``; } } html += `
      `; // 指定文章 html += `
        + `+$obj.data('add-article-title')+`
        `; // 数据类型选择容器 结尾 html += `
        `; // 操作 html += ` `; // 数据结尾 html += `
      • `; $obj.append(html); // 多选插件事件更新 SelectChosenInit(); // 单选初始化 $obj.find('input[type="radio"]').uCheck(); }); // 文章组删除 $(document).on('click', '.data-article-container .content-item-remove-submit', function() { $(this).parents('li').remove(); }); // 文章数据类型事件 $(document).on('change', '.data-article-container input.article_data_type', function() { var $obj = $(this).parents('li'); var $auto = $obj.find('.data-type-auto-container'); var $appoint = $obj.find('.data-type-appoint-container'); if(parseInt($(this).val() || 0) == 0) { $auto.removeClass('am-hide'); $appoint.addClass('am-hide'); } else { $auto.addClass('am-hide'); $appoint.removeClass('am-hide'); } }); });