我在我的程序中的 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>