posts - 11, comments - 30, trackbacks - 0, articles - 3
  博客园 :: 首页 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理

公告

2011年9月5日

(1)  疑问。为什么我没有引用vsdoc版本的jquery库,也有智能提示呢?????????

(2)  貌似vsdoc的js名字要与jquery的js名字一致,如下

<script type="text/javascript" src="Js/jquery-1.6.2.js"></script>

<script type="text/javascript" src="Js/jquery-1.6.2-vsdoc.js"></script>

否则更新jscript intellisense编译不过,并且执行时出现'找不到属性名或方法'等错误

(3)  js引用顺序

    <script type="text/javascript" src="Js/jquery-1.6.2.js"></script>
    <script type="text/javascript" src="Js/jquery-ui-1.8.16.custom.min.js"></script>

依此往下排,如果顺序错误,就会出现'jQuery'未定义的错误。

 

posted @ 2011-09-05 16:25 菠萝35 阅读(33) 评论(0) 编辑

2011年9月1日

摘要: 以前对于数据绑定列表控件一直使用的是gridview,因为方便快捷嘛。后来高人说repeater控件比较好,生成的客户端代码利于SEO,并且效率也高。所以就尝试着将gridview能办到的事情用repeater控件实现一下。先来个效果图--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------阅读全文

posted @ 2011-09-01 09:54 菠萝35 阅读(970) 评论(13) 编辑

2011年8月30日

我是一个工作了2年的.net 菜菜级 程序员,没有高深的知识也没有精湛的技术。

所以。。。没有很高的薪水了(嘿嘿。。。。)

希望在这里能学到很多的知识,希望大家给予我帮助,对于我的文章

希望大家友善得狠狠得拍砖

小女一定虚心学习。

 

 

posted @ 2011-08-30 11:02 菠萝35 阅读(217) 评论(16) 编辑

        对SEO基本上是不了解,今天才知道,原来网站还要做坏链接检查,以前只是手工删除一些不用的链接,哎。。。。长见识了

网上对这个的评价不错,收藏起来,慢慢学习。

 

Xenu死链接检测工具

Xenu是一个免费的桌面软件。是一款深受业界好评,并被广泛使用的死链接检测工具。主要具有以下特征:

.需要下载安装,不到1M大小,用户界面非常简洁,操作简单。

.检测彻底:能够检测到图片、框架、插件、背景、样式表、脚本和java程序中的链接。

.报告形式合理多样,死链接一目了然。

.提供出现死链接的网页,方便扫除导出链接错误。

.能够侦测重定向URL

.可以选择是否侦测站外链接。

.对于小型简单网站,可以用来制作HTML格式网站地图。

死链接检测工具Xenu下载地址:http://home.snafu.de/tilman/XENU.ZIP

使用指南:(英文版)

1.      下载,并安装。

2.      打开后,出现Tips and Tricks窗口,点击Close按钮。

3.      点击左上第二行第一个按钮。

4.      出现一个对话框,在对话框第一行,写入自己的URL。如:http://www.seowhy.com/

5.      按底部的“OK”,就完成了。

6.      报告结果中,出现红色的部分即是死链接。

详细出处参考:http://www.seowhy.com/6_79_zh.html

 

另外网上也有此版的汉化版,对这个工具还不是特别了解,学习中ing。。。。。。。。。。。。。。。。。。。

以下是一些在线检查坏链接的网站,国内滴、国外滴。。。各种在线检查哟

http://tool.57cha.com/badlinkcheck.asp
http://tool.chinaz.com/Links/
http://www.iwebtool.com/broken_link_checker
http://www.addme.com/link-checker.htm
http://www.2bone.com/links/linkchecker.shtml
http://validator.w3.org/checklink

 

posted @ 2011-08-30 10:11 菠萝35 阅读(22) 评论(0) 编辑

VS2008下使用FCKeditor2.6.3安装配置详解

FCKeditor官方网址

http://www.fckeditor.net/

http://ckeditor.com/

http://cksource.com/

现在FCKeditor已经有若干版本了,最新版本为CKEditor3.6.1。可能因为是最新版,所以相关的参考资料比较少。所以选择2.6.3版本并结合自己亲身使用的经验,总结了一下。

一、安装

1、下载文件

FCKeditor_2.6.3.zip

http://sourceforge.net/project/downloading.php?groupname=fckeditor&filename=FCKeditor_2.6.3.zip&use_mirror=jaist

FCKeditor.Net_2.6.3.zip

http://sourceforge.net/project/downloading.php?groupname=fckeditor&filename=FCKeditor.Net_2.6.3.zip&use_mirror=nchc

2、解压FCKeditor_2.6.3.zip,得到文件夹fckeditor\(内含文件如下图)

 

3、将整个fckeditor文件夹拷贝到你的项目根目录下(我的项目解决方案为FckEditortest)


4、解压FCKeditor.Net_2.6.3.zip,得到文件如下


5、将其bin\Release\2.0下的FredCK.FCKeditorV2.dll文件引用到项目的bin文件夹下

Dll路径,如图


添加到bin下,如图


6、添加FCKeditor控件到选项卡

工具箱右键弹出菜单,选择【选择项】


弹出窗口,选择【浏览】


找到项目Fckeditortest\bin下的FredCK.FCKeditorV2.dll,点确定,FCKeditor控件即出现在选项卡中

这时候,我们像使用其他控件一样,直接将Fckeditor控件拖至界面就可以使用了。

到此,安装基本上结束了。

下面说下配置。

 

 

二、配置

1、打开\fckeditor\fckconfig.js文件

将_FileBrowserLanguage,_QuickUploadLanguage的值改为aspx(因为我们使用dotNet来开发)

2、打开项目的web.config文件,在中添加如下两行代码

   <appSettings>

      <add key="FCKeditor:BasePath" value="~/fckeditor/"/>

      <add key="FCKeditor:UserFilesPath" value="/Files/"/>

   </appSettings>

BasePath:fckeditor路径,UserFilesPath图片存储路径,下面对于这个有具体说明。

3、打开\fckeditor\editor\filemanager\connectors\aspx\config.ascx文件

设置UserFilesPath(存储图片的路径,和web.config中的UserFilesPath一致)和UserFilesAbsolutePath(存储图片的绝对路径)


“Files”是项目跟目录下的一个文件夹

“E:\LianXi\FckEditortest\FckEditortest\Files\”是Files的物理路径


Attention: The above 'UserFilesPath' URL must point to the same directory.

意思是,UserFilePath必须指向相同的路径,就是说Files是相对于项目的路径,UserFilesAbsolutePath是绝对路径,这两个路径必须指向同一个地方。我刚开始的时候,二者指向不一致,导致能上传图片至服务器(绝对路径),但是无法显示上传后的图片。低级的错误- -

 

这里有点问题需要说明

当在VS2008中测试调试的时候,UserFilesPath=”/Files/”

 

这个项目我发布在C:\Inetpub\wwwroot\testfck\

当发布时候,就要改成UserFilesPath=”~/Files/”

另外网上说,独立网站或者虚拟目录运行,也有”~”区别,待研究

还有绝对路径的写法上,仍有少许疑问。

4、找到函数SetConfig(),将Enabled=CheckAuthentication()注释掉,Enabled=true取消注释,结果如下图

 

到此,配置结束。

接下来,将分享另外两篇文章

FCKeditor添加自定义右键菜单(如在图片是右键,弹出删除图片,并且可以在服务器上删除哦)

FCKeditor添加管理界面的图片删除功能。

参考文章:http://www.aspxcode.net/download-install-fckeditor.aspx

        

posted @ 2011-08-30 10:08 菠萝35 阅读(452) 评论(1) 编辑

 

上一篇文章中,我们提到过增加图片的右键删除功能以实现同时在服务器上删除图片,之所以定义了图片的右键菜单,是因为当时没有想到如何捕获FCKeditor的键盘事件等一系列问题,今天这个问题得到了解决。看一下代码。也许我在某些部分处理的不够好,但是思路基本是对的,也实现了功能,想做这样功能的可以参考。

首先fckeditor的键盘事件,有两种方式可以获得,一是自定义监听,二是fclkeditor自己有键盘监听事件。

 

一、自定义FCKeditor监听键盘事件

自定义有一个坏处就是,在每个有FCKeditor控件的页面,都要写一串监听代码,才能够监听当前页面fckeditor的键盘事件。

看一下实现过程吧(感谢原作者,这里我有少许修改)

在放置有fckeditor控件页面的源文件aspx里,将下面的代码加到<head></head>之间。

<scripttype="text/javascript">

functionFCKeditor_OnComplete( editorInstance ) {

    editorInstance.EditorDocument.body.attachEvent("onkeydown", editor_keydown);

}

functioneditor_keydown() {

    varoEditor = FCKeditorAPI.GetInstance('FCKeditor1');

    varkeycode = oEditor.EditorWindow.event.keyCode;

    if(keycode == 46) {

        alert(“OK!”);

    }

}

</script>

测试一下成功。(46delete键代码。)

这个是最简单的,当然我们监听事件,如delete事件,肯定不是简单的弹出OK吧,那么我们回到问题的最初码。

来实现删除服务器图片功能。

那么我们把alert这行代码换做下面的

oEditor.Commands.GetCommand('KeyDelPic').Execute();

即让他执行js文件的一个command事件,这个command事件怎么添加,完全和上一篇文章介绍的一样。点击这里查看。下面把我的代码贴出来

    varFCKKeyDelPicCommand =function() {

        this.Name ="KeyDelPic";

    }

    FCKKeyDelPicCommand.prototype =

    {

        Execute:function() {

varoImage = FCK.Selection.GetSelectedElement();

            If(FCK.Selection.GetType() == 'Control' && oImage.tagName == 'IMG') {

                varsUrl = oImage.getAttribute('_fcksavedurl');

                varxml =newActiveXObject("MSXML2.XMLHTTP");

 

                if(confirm('您确定要将图片从服务器删除吗?')) {

                    xml.open("post","FCKdel_file.aspx?filePath="+ sUrl +"&UD=1",false);

                    xml.send();

 

                    switch(xml.responseText.substring(0, 1)) {

                        case"1": alert("文件删除成功!");

                            break;

                        case"0": alert("文件删除失败!请检查文件是否存在!");

                            break;

                        case"2": alert("您不是系统管理员,无权进行操作!");

                            break;

                        default: alert("未知错误!");

                            break;

                    }

                }

            }

        }

    };

可以看到,这段代码跟前面文章中提到的右键删除图片的代码基本上一致,只是多了一行,少了一行。

多了蓝色这一行If(FCK.Selection.GetType() == 'Control' && oImage.tagName == 'IMG') 这是为什么呢?因为前面右键删除图片,是选中图片弹出右键菜单进行删除,已经确定是图片;而现在是delete时候就触发,那么我们就需要判断一下,当是图片的时候,才弹出删除图片提示。所以要多加这行代码。少了黄色这一行oImage.parentNode.removeChild(oImage);因为键盘delete不需要我们手动移除图片。测试一下成功了。

这里还有个小插曲,在前面javascript代码里的这句editorInstance.EditorDocument.body.attachEvent,其中body是我后加的,如果不加body,仅弹出简单的提示框是没有问题的;但是在判断是否为图片的时候,没办法正确判断,所以加了body,至于为什么,不是特别清楚。

到此自定义监听事件结束。

 

 

二、看一下fckeditor自带的监听事件,我们不需要在每个有控件的页面写了,直接写在fckeditor里就OK了。

打开文件editor\_source\classes\fckenterkey.js找到这个函数

FCKEnterKey.prototype.DoDelete = function() {

var oImage = FCK.Selection.GetSelectedElement();

    if (FCK.Selection.GetType() == 'Control' && oImage.tagName == 'IMG') {

        FCK.Commands.GetCommand('KeyDelPic').Execute();

    }

FCKUndo.SaveUndoStep();

其中紫色的代码,是我们要加进去的,执行了同样的command代码。就是在判断是否为图片上有些重复判断了,需要优化一些。

至此两种方法全部完毕。我不是.net高手,只是一个小程序员,希望这些总结能给那些暂时迷茫的同行们一些帮助。

参考文章:http://www.code-design.cn/article/20090701/382.aspx

 

posted @ 2011-08-30 10:04 菠萝35 阅读(240) 评论(0) 编辑

接上一篇文章:FckEditor添加右键菜单;增加编辑区右键图片删除功能(asp.net )(一)

(二)

var FCKDelPicCommand = function() {

    this.Name = "DelPic";// Command事件的名称,此语句可以不写

}

FCKDelPicCommand.prototype =

    {

        // 删除文件

        Execute: function() {

            var oImage = FCK.Selection.GetSelectedElement();// 得到当前选择的图片对象

            var sUrl = oImage.getAttribute('_fcksavedurl'); // 得到图片存储地址

           oImage.parentNode.removeChild(oImage); // 从编辑器中移除该图片

 

            var xml = new ActiveXObject("MSXML2.XMLHTTP");

            if (confirm('要删除服务器上的图片吗?')) {

                xml.open("get", "FCKdel_file.aspx?filePath=" + sUrl + "&UD=1", false);

                xml.send();// 调用Fckdel_file.aspx文件进行服务器图片删除(这个aspx文件步骤6中讲)

                

                switch (xml.responseText.substring(0, 1)) {

                    case"1": alert("文件删除成功!");

                        break;

                    case"0": alert("文件删除失败!请检查文件是否存在!");

                        break;

                    case"2": alert("您不是系统管理员,无权进行操作!");

                        break;

                    default: alert("未知错误!");

                        break;

                }

            }

        }

};// 注意分号哦!!!

6, editor\目录下添加Fckdel_file.aspx文件,代码如下

protectedvoid Page_Load(object sender, EventArgs e)

   {

     //注意哦!!!步骤5 js里面xml.open("get", "xxx.aspx")

        //当为get时,则当编辑器里AB两个地方同时放有图片C,若删除A处图片C后,再删除B处图片C,则下面的代码不会被执行,当为post时,没有此问题

    // if (Request.QueryString["UD"] != null)    这个主要是用来做一些权限方面的认证

    // {

      try

        {

             string file = Request.QueryString["filePath"].Trim();

             string filePath = Server.MapPath(file);

          if (System.IO.File.Exists(filePath))

            {

                  System.IO.File.Delete(filePath);

               Response.Write("1");

             }

             else

              {

                  Response.Write("0");

              }

         }

         catch

          {

              Response.Write("0");

          }

         //}

          //else Response.Write("2");

     }

参考文章:

右键菜单:http://blog.sina.com.cn/s/blog_60f18b040100dr7p.html

图片删除:http://www.cnblogs.com/scottckt/archive/2010/12/08/1900284.html

posted @ 2011-08-30 09:58 菠萝35 阅读(277) 评论(0) 编辑

        (一)

        最近的项目中遇到一个问题,用fckeditor上传图片后,编辑突然觉得这个图片不合适,然后按键盘上的del键将图片直接delete掉了,但实际上这个图片已经上传至服务器了。如果这样操作的次数多了,那么服务器上就会存在很多垃圾图片,就是实际上并没有用到的图片。所以想删除图片的时候,直接在服务器上将此图片也删除。(总之,我觉得这个功能有点在偷懒- -怎么说也应该在管理界面删除图片吧)

        因为刚开始觉得键盘del实现图片服务器删除有点苦难,所以想了一招,给图片增加一个右键菜单,实行图片服务器删除。(至于delete键删除下一篇文章再说)

效果图如下

,蓝框内为FCKeditor自带的图片右键菜单,【删除图片】是自定义的

。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。

下面看下具体过程。

1, 首先,在editor/lang/zh-cn.js里添加你所要添加的工具条item的名字,此文件定义了一个FCKLang变量,仿照里面的格式写。我们是定义一个删除图片的的右键菜单,因此起名字为DelPic,如下图所示。

注意绿色画圈的部分,如果不是最后一行变量,一定要在末尾加上逗号

 

2, 之后,在editor/_source/internals/fckcommands.js 里定义一个command

case'DelPic': oCommand =newFCKDelPicCommand('DelPic', FCKLang.DelPic); 

break


注意FCKDelPicCommand了么?这个是一个自定义的command,稍候将讨论它。

3, 然后,在editor/_source/internals/fckcontextmenu.js 添加一个context menu 

如果你添加的是普通文本的右键菜单操作,那么在case 'Generic' : 下面添加如下:

menu.AddItem( 'First'   , FCKLang.First , 10, false); 

本文是操作的图片,因此在case ‘Image’:下面添加如下

menu.AddItem('DelPic', FCKLang.DelPic, 71,false);


第一个参数是显示的默认值,第二个是在资源文件(/lang/zh-cn.js)中取得的文字(本文即为删除图片’),如果找不到则使用第一个参数的字符串作为默认值,第三个是从菜单图片中选择使用的图片序号,(关于这个序号,怎么找?可以看一下case 'Generic'Paste的序号为9,那么你从zh-cn.js里对应往下数即可,本文71就是这么来滴)。第四个布尔类型的参数,如果指定为true,则菜单项为不可以选中,false为可选。(是不是感觉真假反了- -,实际没反,可以验证一下)

4, 然后,还有最关键的一步:editor/下的fckeditor.original.html网页的内容代替fckeditor.html的内容,同时不要忘记备份fckeditor.html文件!(还是不明白为什么要代替呢,不代替会失败么?)

5, 现在开始讨论步骤2中的FCKDelPicCommand。菜单添加上了,你总得让它拥有什么功能吧?好,在editor/_source/commandclasses/fck_othercommands.js里新建这个类:

    var FCKDelPicCommand = function(){}

    FCKDelPicCommand.prototype =

    {

        Execute : function()

        {

            alert("测试方法");

        }

};

运行一下,OK了。本文我们要实现删除图片的功能哦,所以不能简单的alert(),下面我们来完善一下删除图片代码。 

请用力点击这里:FckEditor添加右键菜单;增加编辑区右键图片删除功能(asp.net )(二)

posted @ 2011-08-30 09:56 菠萝35 阅读(535) 评论(0) 编辑

1。无法弹出JavaScript对话框

普通页面用如下语句

this.Page.ClientScript.RegisterStartupScript(typeof(Page), "", scriptmsg);
使用UpdatePanel用下面的方法

ScriptManager.RegisterStartupScript(Page, typeof(Page), "Redirect", scriptStr, false);

2。.页面跳转问题

弹出提示信息并且页面跳转

        public void RedirectPrePage(string operate)
        {
            string scriptStr = "<script language='JavaScript'>alert('" + operate + "');window.location.href='moren.aspx';</script>";
            ScriptManager.RegisterStartupScript(Page, this.GetType(), "Redirect", scriptStr, false);
        }

posted @ 2011-08-30 09:44 菠萝35 阅读(122) 评论(0) 编辑

2011年8月26日

gridview

        <Columns>
        <asp:TemplateField HeaderText="序号">
             <ItemTemplate>
            <%# Container.DataItemIndex +1 %>
            </ItemTemplate>
        </asp:TemplateField>
            <asp:BoundField ....../>
...
</Columns>

Repeater(用于不分页的情况下)

        <ItemTemplate>
        <tr>
        <td><%# Container.ItemIndex +1 %></td>
        <td><%#Eval("NewsTitle")%> </td>
        <td><%# DataBinder.Eval(Container.DataItem,"CreateTime","{0:yyyy-M-d}")%></td>
        </tr>
        </ItemTemplate>

posted @ 2011-08-26 17:33 菠萝35 阅读(216) 评论(0) 编辑