• 0

ASP.NET WYSIWYG Editor...


Question

Good Day...

I'm in the middle of creating a CMS and for ease of use and addition of extended flexibility I've decided to give the option to allow editing of the content via a WYSIWYG editor.

Because I can use it freely until I finish the CMS (at which point it may be distributed for monies in which I'll need a distrobution license) I had decided to use John Dyers FreeTextBox (http://www.freetextbox.com). Not only is it free for personal use, but it includes a really sharp ImageGallery control and is faster than some of the others out there as well. Also worth mentioning, it's a fully encapsulated solution now... you don't need to copy IMAGES and JS files... only the DLL and everything is stored within it. That makes rollout NICE...

Anyway, I'm having some problems with it... using IE, goto http://joshandbrandi.com/post.aspx?PostID=1. The FTB control is at the bottom of the page. Within it "undefined" is displayed. Not only that, but if I change that and try to add anything it doesn't post correctly. I cannot figure out what's causing this.

The funny thing is that using FireFox the error DOES NOT show up and the control works fine!!! Does anybody have any ideas on this?

Link to comment
https://www.neowin.net/forum/topic/303693-aspnet-wysiwyg-editor/
Share on other sites

10 answers to this question

Recommended Posts

  • 0

Nice try on the IE7 thing... I forgot I even had that in there. However, even after removing it, I'm still getting this wierd problem.

And since I'm not being shy... here's the page code... nice and simple you'll see...

<%@ Page Language="VB" ContentType="text/html" ResponseEncoding="iso-8859-1" ValidateRequest="False" Src="_global.vb" Inherits="Global" %>
<%@ Register TagPrefix="FTB" Namespace="FreeTextBoxControls" Assembly="FreeTextBox" %>
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.SQLClient" %>
<script runat="server">

	Sub Page_Load()
  If NOT(Page.IsPostBack) Then
  	LoadPost()
  	LoadReplies()
  End If
	End Sub

	Sub LoadPost()
  dim strSQL as string = "SELECT PostID, Author, [Date], Header, Post FROM Post WHERE Approve=1 AND PostID=" & Request.QueryString("PostID")
  rptPost.Datasource = GetData(strSQL)
  rptPost.Databind()
	End Sub

	Sub LoadReplies()
  dim strSQL as string = "SELECT ReplyID, Author, [Date], Post FROM Reply WHERE PostID=" & Request.QueryString("PostID") & " ORDER BY [Date] ASC"
  rptReply.Datasource = GetData(strSQL)
  rptReply.Databind()
	End Sub

	Function CountReplies(ByVal PostID As String) As String
  dim strSQL as string = "SELECT COUNT(*) AS Replies FROM Reply WHERE PostID=" & PostID
  return GetScalar(strSQL)
	End Function

	Sub PostReply(ByVal Sender As Object, ByVal e As EventArgs)
  dim strSQL as string = "INSERT INTO Reply (PostID, [Date], Author, Post) VALUES (@PostID, @Date, @Author, @Post)"
  dim C as New SQLCommand(strSQL, Conn)
  With C.Parameters
  	.Add(New SQLParameter("@PostID",Request.QueryString("PostID")))
  	.Add(New SQLParameter("@Date",Now()))
  	.Add(New SQLParameter("@Author",Author.Text))
  	.Add(New SQLParameter("@Post",Reply.Text))
  End With
  PostData(C)
  LoadPost()
  LoadReplies()
	End Sub

</script>

<!--#include file="_header.inc" -->

<h1>Post And Replies</h1>

<asp:Repeater ID="rptPost" runat="server">
	<itemtemplate>
  <h2><%# DataBinder.Eval(Container.DataItem, "Header") %></h2>
  <span class="postinfo">by: <span class="postinfoaugment"><%# FormatEmail(DataBinder.Eval(Container.DataItem, "Author")) %></span> on 
  <span class="postinfoaugment"><%# AdjustTime(DataBinder.Eval(Container.DataItem, "Date")) %></span></span>
  <p><%# DataBinder.Eval(Container.DataItem, "Post") %></p>
  <p><a href="#reply">Reply To Post</a>: Currently there are <%# CountReplies(DataBinder.Eval(Container.DataItem, "PostID")) %> replies.</p>
	</itemtemplate>
</asp:Repeater>

<p> </p>

<h3>Replies...</h3>
<asp:Repeater ID="rptReply" runat="server">
	<itemtemplate>
  <p><span class="replyinfo">by: <span class="postinfoaugment"><%# FormatEmail(DataBinder.Eval(Container.DataItem, "Author")) %></span> on 
  <span class="postinfoaugment"><%# AdjustTime(DataBinder.Eval(Container.DataItem, "Date")) %></span> 
  &lt;a href="work.aspx?Type=Reply&Action=Delete&ID=<;%# DataBinder.Eval(Container.DataItem, "ReplyID") %&gt;" onclick="return smallWin(this.href);">&lt;img class="noborder" src="images/delete.gif" alt="Request Deletion" /&gt;
  &lt;/a&gt;&lt;/span&gt;&lt;br /&gt;
  &lt;%# DataBinder.Eval(Container.DataItem, "Post") %&gt;&lt;/p&gt;
	&lt;/itemtemplate&gt;
&lt;/asp:Repeater&gt;

&lt;p&gt; &lt;/p&gt;

&lt;a name="reply" id="reply"&gt;&lt;/a&gt;
&lt;form runat="server"&gt;
	&lt;div id="replybox"&gt;
  &lt;p&gt;Your Email Address: &lt;asp:TextBox ID="Author" runat="server" MaxLength="128" /&gt;&lt;/p&gt;
  &lt;p&gt;Your Reply:&lt;br /&gt;
  	&lt;FTB:FreeTextBox id="Reply" runat="server"
    ToolbarStyleConfiguration="Office2003"
    ToolbarLayout="bold,italic,underline,JustifyLeft,JustifyRight,JustifyFull,JustifyCenter,FontForeColorPicker,FontSizesMenu|cut,copy,paste,delete|bulletedlist,numberedlist|createlink,Unlink,InsertImageFromGallery,IeSpellCheck"
    BreakMode="Paragraph"
    ConvertHtmlSymbolsToHtmlCodes="True"
    DesignModeCss="_ftb.css"
    DownLevelMode="TextArea"
    DownLevelCols="100"
    DownLevelRows="10"
    EnableHtmlMode="False"
    FormatHtmlTagsToXhtml="True"
    PasteMode="Text"
    RemoveServerNameFromUrls="True"
    StripAllScripting="True"
    TabMode="InsertSpaces"
    Height="175"
    Width="100%"
  	/&gt;
  &lt;/p&gt;
  &lt;p&gt;&lt;asp:Button ID="btnPostReply" runat="server" Text="Submit" OnClick="PostReply" /&gt;&lt;/p&gt;
	&lt;/div&gt;
&lt;/form&gt;

&lt;!--#include file="_footer.inc" --&gt;

  • 0

Nothing stands out but

 ToolbarLayout=&amp; #34;bold,italic,underline,JustifyLeft,JustifyRight,JustifyFull,JustifyCenter,FontForeColorPicker,FontSizesMenu|cut,copy,paste,delete|bulletedlist,numberedlist|createlink,Unlink,InsertImageFromGallery,IeSpellCheck"

Looks like your using & #34; instead of " in the ToolbarLayout setting.

Also do you have the freetextbox jscripts ( i think there are 5 of them) in \aspnet_client\FreeTextBox directory?

  • 0

Neowin converted those to ASCII equivs... they're not like that in the code itself.

No, I don't have the scripts. This is version 3.0.3 and is fully self contained. Very nice actually. But do you see how it works in FF but not IE? This is freaking me out and I'm not getting ANYWHERE on the FTB forums... they're kinda dead at the moment.

  • 0

Try just putting the control in, no settings and see what happens. Like

&lt;FTB:FreeTextBox id="Reply" runat="server"/&gt;

If it works, slowly add each setting and see when the problem comes up.

  • 0

It still does it. I'm not sure exactly what happened... it worked at first, and then after adding the toolbaritems and other properties (I did all at once) it started messing up like that... but only in IE.

Am I the only one having this problem or does anybody else experience this too?

This topic is now closed to further replies.
  • Recently Browsing   0 members

    • No registered users viewing this page.
  • Posts

    • Cool! Something no one wants that eats up storage space and battery life for free! /s
    • GT games are boring compared to Forza (Horizon or Motorsport)
    • Dead By Daylight and three more games join Xbox Free Play Days this weekend by Pulasthi Ariyasinghe As the weekend approaches, Microsoft has brought along another Free Play Days promotion for Game Pass subscribers to jump into. This time, Dead by Daylight, Headbangers: Rhythm Royale, Trailmakers, and Synduality Echo of Ada are all available for Xbox Game Pass Ultimate, Standard, and Core members for no extra cost. As always, any progress made during the weekend also carries over automatically if you decide to purchase a game afterward. From the four games available, Dead by Daylight should be the most familiar to most gamers. The multiplayer four-versus-one asymmetric survival horror game has you assuming the roles of survivors or the killer to see who can come out on top. Next, Headbangers: Rhythm Royale lands as a light-hearted, rhythm-based battle royale game. Up to 30 players can be in a single round, all represented as pigeons, before various mini-games involving increasingly difficult rhythm challenges get thrown at the group. The last remaining pigeon becomes the "Master Headbanger." Meanwhile, Trailmakers is a popular sandbox experience where you and your friends construct physics-based vehicles. A wide range of modular parts are offered for making these vehicles, with an exploration element also adding more options to search for. Adventure, sandbox, and racing modes arrive as options for playing either solo or in multiplayer. Lastly, the Synduality Echo of Ada is a sci-fi extraction shooter experience where you control mechs as you search for loot while fighting AI and other players. Here are the store links for the announced titles and their supported platforms: Dead by Daylight - $11.99 (Xbox Series X|S, Xbox One) Headbangers: Rhythm Royale - $3.99 (Xbox Series X|S, Xbox One, PC) Trailmakers - $14.99 (Xbox Series X|S, Xbox One, PC) SYNDUALITY Echo of Ada - $29.99 (Xbox Series X|S) This Free Play Days promotion will end on Sunday, June 22, at 11:59 pm PT. Following this, expect another round of games to enter the program next Thursday, June 26.
    • I'm not simping, I'm telling it how it is. This is the norm and has been forever. Profits need to keep growing, it doesn't matter if you are valued at a trillion or a million. As long as you are part of public trading that's the name of the game. If it's cheaper for the company to outsource, they will, and you'll get laid off. Welcome to capitalism 101. Like I said, the problem is the system itself.
  • Recent Achievements

    • First Post
      MikeK13 earned a badge
      First Post
    • One Month Later
      OHI Accounting earned a badge
      One Month Later
    • Week One Done
      OHI Accounting earned a badge
      Week One Done
    • First Post
      Thornskade earned a badge
      First Post
    • Week One Done
      Higante88 earned a badge
      Week One Done
  • Popular Contributors

    1. 1
      +primortal
      703
    2. 2
      ATLien_0
      267
    3. 3
      Michael Scrip
      202
    4. 4
      +FloatingFatMan
      172
    5. 5
      Steven P.
      133
  • Tell a friend

    Love Neowin? Tell a friend!