Javascript让DEDECMS告别手写Tag

1。 打开\dede\templets\album_add.htm文件, 在顶部head中的js script区增加js方法.

function setag(){
 var tagg=window.showModalDialog("tags_main.php","tag","dialogWidth=800px;dialogHeight=600px");
  if(typeof(tagg) != 'undefined') document.form1.tags.value=tagg;
      }

2.  在Tag标签输入的td里, 添加

<input type="button" onclick="setag()"  value="选择" style="width:70px;cursor:pointer;" />
一个按钮.

3.  改造\dede\templets\tags_main.php文件.  在顶部head中js script区增加以下js代码.

//选择关键字
var tag="";
function selectTag(str)
{
tag=tag+","+str;
if (tag.substr(0,1)==',') tag=tag.substr(1);
 $("#selecttag").val(tag);
}

function selectTagOK()
{
window.returnValue= $("#selecttag").val();
window.close();
}

4.  在body任意位置增加以下html, PS:你想显示的地方.

<div style="padding-left:20px;border:1px">所选TAG: <input type='text' id='selecttag' name='selecttag' size='80'/><input type="button" onClick="selectTagOK()" value="确定选择"/> </div>

5. 找到Tag列表中的

<a href="../tags.php?/<?php echo urlencode($fields['tag']); ?>/" target="_blank">{dede:field.tag /}</a>

将它修改成:

<a href="../tags.php?/<?php echo urlencode($fields['tag']); ?>/" target="_blank">{dede:field.tag /}</a>
<a href="#" onclick="selectTag('{dede:field.tag /}')">[选择]</a>

使用帮助:

修改页可参照add页进行js代码添加.

(0)

相关推荐

  • DeDecms中利用关键词实现简单tag功能的php代码

    修改模板文件,例如article_article.htm,在需要增加tag的地方,增加如下代码: 复制代码 代码如下: {dede:field name='keywords' runphp='yes' }      if(!empty(@me)){            $kws = explode(' ',@me);            @me = "";            foreach($kws as $k){            @me .= "<a h

  • DEDECMS TAG伪静态 IIS_rewrite配置方法附rewrite下载

    方法 1.因为没有像PHP自带的ReWrite模块,所以需要下载IIS Rewrite模块: http://www.jb51.net/softs/6192.html 2.将压缩包解压到任意目录,(如:C:\Rewrite).然后打开"控制面板"-"管理工具"-"IIS信息服务管理器"-"网站"-"您的站点 "-"属性".在"ISAPI筛选器"项点击 "添加&

  • dedecms tags keywords问题修正方法

    下面是修改方法:原来只是只要我们在添加,修改信息时,增加个keywords为空判断,如果keywords为空,则将tags的字段赋值给keywords具体代码,一般在是入库的sql语句中,增加一段这样的代码 复制代码 代码如下: if ($keywords==""){ $keywords=$tag; }

  • Javascript让DEDECMS告别手写Tag

    1. 打开\dede\templets\album_add.htm文件, 在顶部head中的js script区增加js方法. function setag(){ var tagg=window.showModalDialog("tags_main.php","tag","dialogWidth=800px;dialogHeight=600px"); if(typeof(tagg) != 'undefined') document.form1.t

  • javascript 星级评分效果(手写)

    今天上午抽空随手写了个星级评分的效果,给大家分享下.由于水平有限,如有问题请指出. 首先要准备一张星星的图片,灰色是默认状态,黄色是选择状态.如图: 最后附上代码: 复制代码 代码如下: <!DOCTYPE HTML> <html lang="en-US"> <head> <meta charset="UTF-8"> <title>javascript星级评分</title> <style

  • 纯JavaScript手写图片轮播代码

    废话不多说了,直接给大家贴js代码实现手写图片轮播的代码了,代码非常简单,具体代码如下所示: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>js图片轮播切换</title> <style type="text/css"> .imgCon{width: 400px;height: 400px;border: 2p

  • 「中高级前端面试」JavaScript手写代码无敌秘籍(推荐)

    1. 实现一个new操作符 new操作符做了这些事: 它创建了一个全新的对象. 它会被执行[[Prototype]](也就是__proto__)链接. 它使this指向新创建的对象.. 通过new创建的每个对象将最终被[[Prototype]]链接到这个函数的prototype对象上. 如果函数没有返回对象类型Object(包含Functoin, Array, Date, RegExg, Error),那么new表达式中的函数调用将返回该对象引用. function New(func) { va

  • JavaScript手写数组的常用函数总结

    前言 在开发过程中,我们常常使用数组的一些 api 相关操作,其中包含 forEach . filter . find . findIndex . map . some . every . reduce . reduceRight 等函数方法. 今天,我们试试手写这些函数,实现数组这些函数方法.为了方便,直接在数组原型对象 prototype 上扩展. 本文 Githab 已上传,更多往期文章已分类整理. 正文 参数说明 callbackFn 回调函数 thisArg 执行 callbackFn

  • 前端面试JavaScript高频手写大全

    目录 1. 手写instanceof 2. 实现数组的map方法 3. reduce实现数组的map方法 4. 手写数组的reduce方法 5. 数组扁平化 5. 1 es6提供的新方法 flat(depth) 5.2 利用cancat 6. 函数柯里化 7. 浅拷贝和深拷贝的实现 7.1浅拷贝和深拷贝的区别 8. 手写call, apply, bind 8.1 手写call 8.2 手写apply(arguments[this, [参数1,参数2.....] ]) 8.3 手写bind 9.

  • JavaScript实现手写原生任务定时器

    功能介绍 定时器顾名思义就是在某个特定的时间去执行一些任务,现代的应用程序早已不是以前的那些由简单的增删改查拼凑而成的程序了,高复杂性早已是标配,而任务的定时调度与执行也是对程序的基本要求了.通过时间表达式来进行调度和执行的一类任务被称为定时任务,很多业务需求的实现都离不开定时任务. 在javascript中要实现定时任务也是很简单的,可以选择插件,也可以自己写一个简单的定时任务,这里就个给大家写一个简单的 setInterval() 循环定时任务.功能有,启动定时任务.停止定任务.添加定时任务

  • JavaScript手写Promise核心原理

    目录 准备 完善 resolve/reject then 异步处理 链式调用 边界处理 catch 优化后完整代码 准备 首先,promise 有三种状态:pending fulfilled rejected; promise在实例化操作中, 有两个改变状态的方法,分别为resolve,reject; promise有很多方法,详情请见 mdn, 本篇文章先实现 promise的核心api: then和catch; 我们使用 es6 提供的 class 来实现 class MyPromise {

  • JavaScript手写call,apply,bind方法

    目录 前言 改写this实现思路 前期准备 手写call方法 手写apply方法 手写bind方法 前言 改变this指向在书写业务的时候经常遇到,我们经常采用以下方法进行改写 使用作用声明变量存储this 使用jJavaScript的原生方法call,apply,以及bind进行改写 第一种方法就不说了,就是一个变量存储的问题,主要说第二种如何实现的 call,bind,apply方法都是JavaScript原生的方法,挂载在Function原型上,使得所有函数都可以调用,今天我们来实现一下c

  • 万字详解JavaScript手写一个Promise

    目录 前言 Promise核心原理实现 Promise的使用分析 MyPromise的实现 在Promise中加入异步操作 实现then方法的多次调用 实现then的链式调用 then方法链式调用识别Promise对象自返回 捕获错误及 then 链式调用其他状态代码补充 捕获执行器错误 捕获then中的报错 错误与异步状态的链式调用 将then方法的参数变成可选参数 Promise.all方法的实现 Promise.resolve方法的实现 finally方法的实现 catch方法的实现 完整

随机推荐