2

我在我的程序中的 textarea 上使用 jEditable 插件。我想做的是,当我点击文本区域时,我想输入类似的内容:首先执行此操作,执行此操作,然后执行此操作,然后执行此操作。

当我提交时,我希望 jEditable 保留我现有的格式,这是我当前的 textarea 所做的,但是当我单击 textarea 再次编辑时,它会显示以下内容:首先
执行此操作,执行此操作,执行此操作,执行此操作,执行此操作,执行此操作,执行此操作

我希望能够再次单击文本区域进行编辑,然后让它显示用户友好的文本,而不是它所做的 html,但我需要保持格式不变。

下面是我的 javascript、视图和控制器。任何帮助都会很棒!

Javascript:

$(".textarea").editable("/ShoppingList/UpdateNotesReminders",
{
     type      : 'textarea',
     rows      : 7,
     columns   : 15,
     cancel    : 'Cancel',
     submit    : 'Save',
     method: 'POST',
     placeholder     : 'No Notes have been entered',
     callback: function(value, settings) { 
    var retval = value.replace(/\n/gi, "<br>"); 
    $(this).html(retval);
}
});

行动:

//This action is called when save button is clicked after editing notes and reminders.
        [ValidateInput(false)]
        public string UpdateNotesReminders(string id, string value)
        {
            HttpCookie notesRemindersCookie = new HttpCookie("notesRemindersCookie");
            notesRemindersCookie.Value = value.Replace("<br>", "%0a");
            notesRemindersCookie.Expires = DateTime.Now.AddDays(1);

            this.ControllerContext.HttpContext.Response.Cookies.Add(notesRemindersCookie);
            return value;
        }

看法:

<div class="textarea dynform" id="NotesReminders">@Html.Raw(Model.NotesReminders)</div> 
4

1 回答 1

0

我认为您的帖子已从您尝试显示的一些 HTML 中删除...

但我认为您的问题的解决方案是 HTMLEncode/Decode 用户内容。

于 2012-10-03T04:29:52.037 回答