加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net – TinyMCE在我第一次保存时不会返回任何值

发布时间:2020-12-16 06:26:53 所属栏目:asp.Net 来源:网络整理
导读:我的ASP.NET页面上有一个TinyMCE脚本,在SaveFAQ()函数的帮助下,我们可以保存TineMCE使用的textarea. private void SaveFAQ(bool returnToFAQ = false){ DataSet ds = new DataSet(); if (mceQuestion.Value.Length 7) if (mceQuestion.Value.Substring(0,3)
我的ASP.NET页面上有一个TinyMCE脚本,在SaveFAQ()函数的帮助下,我们可以保存TineMCE使用的textarea.

private void SaveFAQ(bool returnToFAQ = false)
{
    DataSet ds = new DataSet();

    if (mceQuestion.Value.Length > 7)
        if (mceQuestion.Value.Substring(0,3) == "<p>" && "</p>" == mceQuestion.Value.Substring(mceQuestion.Value.Length - 4,4))
        {
            mceQuestion.Value = mceQuestion.Value.Substring(3,mceQuestion.Value.Length - 7);
        }

    DateTime? faqFromDate;
    DateTime tmp;
    if (DateTime.TryParse(txtQuestionOfTheDay.Text,out tmp))
        faqFromDate = tmp;
    else
        faqFromDate = null;

    ds = _server.AdminSaveFAQ(FAQ_Id,chbHighlight.Checked,LAN_Id_Primary,mceQuestion.Value,mceAnswer.Value,txtFlash.Text,mceStepByStep.Value,mceTip.Value,faqFromDate,chbImportant.Checked);

    if (FAQ_Id == 0)
        FAQ_Id = (int)ds.Tables[0].Rows[0]["FAQ_Id"];

    foreach (Control c in pnlCheckbox.Controls)
    {
        if (c.GetType() == typeof(CheckBox))
            _server.AdminSaveFAQCategory(FAQ_Id,int.Parse(((CheckBox)c).ID),((CheckBox)c).Checked);
    }

    if (!returnToFAQ)
    {
        lblStatusUp.Visible = true;
        lblStatusDown.Visible = true;

        if (!ds.DataSetEmpty())
        {
            lblStatusUp.Text = "Saved successfully!";
            lblStatusDown.Text = "Saved successfully!";
            lblStatusUp.ForeColor = System.Drawing.Color.Green;
            lblStatusDown.ForeColor = System.Drawing.Color.Green;
        }
        else
        {
            lblStatusDown.Text = "Error while saving!";
            lblStatusUp.Text = "Error while saving!";
            lblStatusUp.ForeColor = System.Drawing.Color.Red;
            lblStatusDown.ForeColor = System.Drawing.Color.Red;
        }
    }
    else
    {
        //if (Session["PreviousPage"] != null) Response.Redirect(Session["PreviousPage"].ToString());
        Response.Redirect("~/Administration/FAQ.aspx");
    }
}

我第一次按下保存按钮时会触发一个执行此功能的事件SaveFAQ();.它成功地在数据库中创建了一行,但是字符串mceQuestion.Value& mceAnswer.Value是空的.第二次按下按钮时,它会触发完全相同的事件,并且值将被填充并成功保存.

我怎么能这样做,我只需按一下保存?

感谢所有答案,祝你有个美好的一天!

编辑:
这是mceQuestion;

<textarea ID="mceQuestion" runat="server" cols="100" rows="6" />

编辑2:
一直试图将这种节约与保存新闻(完全有效)进行比较.没有太大的区别,我一直在测试这个SaveFAQ()的差异,但这并没有削减它.

以下是我的TinyMCE设置,如果它们可能会派上用场.

<script type="text/javascript">
    tinyMCE.init({
        // General options
        mode: "textareas",theme: "advanced",plugins: "autolink,lists,spellchecker,pagebreak,style,layer,table,save,advhr,advimage,advlink,emotions,iespell,inlinepopups,insertdatetime,preview,media,searchreplace,print,contextmenu,paste,directionality,fullscreen,noneditable,visualchars,nonbreaking,xhtmlxtras,template",// Theme options
        theme_advanced_buttons1: ",bold,italic,underline,strikethrough,|,justifyleft,justifycenter,justifyright,justifyfull,styleselect,formatselect,fontselect,fontsizeselect",theme_advanced_buttons2: "cut,copy,pastetext,pasteword,search,replace,bullist,numlist,outdent,indent,blockquote,undo,redo,link,unlink,anchor,image,cleanup,help,code,insertdate,inserttime,forecolor,backcolor",theme_advanced_buttons3: "tablecontrols,hr,removeformat,visualaid,sub,sup,charmap,ltr,rtl,fullscreen",theme_advanced_buttons4: "insertlayer,moveforward,movebackward,absolute,styleprops,cite,abbr,acronym,del,ins,attribs,template,insertfile,insertimage",theme_advanced_toolbar_location: "top",theme_advanced_toolbar_align: "left",theme_advanced_statusbar_location: "bottom",theme_advanced_resizing: true,// Skin options
        skin: "o2k7",skin_variant: "silver",// Example content CSS (should be your site CSS)
        //content_css: "css/example.css",// Drop lists for link/image/media/template dialogs
        template_external_list_url: "js/template_list.js",external_link_list_url: "js/link_list.js",external_image_list_url: "Images.aspx",media_external_list_url: "js/media_list.js",// Replace values for the template plugin
        //template_replace_values: {
        //    username: "Some User",//    staffid: "991234"
        //}
    });
</script>

我感谢任何可能或正确引导我朝正确方向前进的反馈,答案或提示!

解决方法

我通过添加OnClientClick =“tinyMCE.triggerSave(false,true)修复了它;”到每个保存按钮.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读