CKEditor不能正确显示标签

时间:2014-11-10 02:06:32

标签: javascript html express ckeditor

我正在尝试使用CKEDITOR作为我的快递应用程序,但我遇到了一个问题,我尝试使用list元素标签,但是我没有用适当的HTML格式显示我的内容,而是显示了标签。我最近配置了编辑器以删除出现的<p>标记,但似乎还需要添加其他内容才能使标记以正确的HTML格式显示。

更新附件是这些<ul><li>元素的源代码截图。

Ul elements

Use of the list element

How it appears

志文章-create.ejs:

 <html>
    <head>
        <% include ../partials/head %>
        <script src="//cdn.ckeditor.com/4.4.5/standard/ckeditor.js"></script>
    </head>

    <body>

        <header>
            <% include ../partials/header %>
        </header>

        <div class="grid grid-pad">
            <div class="col-1-1">
                <h1>Blog Create</h1>


                <form action="/admin/posts/create" method="POST">
                    Title: <input type="text" name="title"><br>
                    Author: 
                        <select name="author">
                            <option value="Author">Author</option>
                        </select><br>
                    Category: 
                        <select name="category">
                            <option value="Analytics/SEO/SEM">Analytics/SEO/SEM</option>
                            <option value="Advice">Advice</option>
                            <option value="Programming">Programming</option>
                            <option value="Thoughts">Thoughts</option>
                        </select><br>
                    Tagline: <input type="text" maxlength="160" name="tagline"><br>
                    Content:<br>
                    <textarea name="content" id="blog-editor" rows="10" cols="80">

                    </textarea><br>
                    Tags: <input type="text" name="tags"><br>
                    <input type="submit" value="Submit">
                </form>
            </div>
        </div>

            <script>
        // Replace the <textarea id="blog-editor"> with a CKEditor
                    // instance, using default configuration.

                    CKEDITOR.replace( 'blog-editor' );
                    CKEDITOR.config.enterMode = 2;


        </script>


    <footer>
        <% include ../partials/footer %>
    </footer>

</body>
</html>

routes.js:

   var express = require('express');
    var router = express.Router();
    var blogDB = require('../config/blogDB.js');
    var Blogpost = require('./models/blogModel.js');
    var paginate = require('express-paginate');

    //index 
    router.use(paginate.middleware(10, 50));




        router.route('/') 


            // START GET method
            .get(function(req, res, next) {

                Blogpost.paginate({}, req.query.page, req.query.limit, function(err, pageCount, blogpost, itemCount) {




                    if (err) return next(err)

                            if (err)
                                res.send(err);


                            function dateDisplayed(timestamp) {
                                var date = new Date(timestamp || Date.now() );
                                return (date.getMonth() + 1 + '/' + date.getDate() + '/' + date.getFullYear());
                            }


                            blogpost.title = req.body.title; // get the blog title
                            blogpost.author = req.body.author; // get the author name
                            blogpost.tagline = req.body.tagline; // get tagline
                            blogpost.content = req.body.content; // get the blog content
                            blogpost.category = req.body.category; // get the category
                            blogpost.tags = req.body.tags; // get the tags
                            blogpost.date = dateDisplayed(req.body.date);

                            console.log(blogpost.date);

                            res.format({
                                html: function() {
                                    res.render('pages/index', {
                                        blogpost: blogpost,
                                        pageCount: pageCount,
                                        itemCount: itemCount
                                    })
                                },
                                json: function() {

                                    res.json({
                                        object: 'blogpost',
                                        has_more: paginate.hasNextPages(req)(pageCount),
                                        data: blogpost
                                    })
                                }
                            }); // END res.format(html, json)
                }); // END Blogpost.paginate
            }); // END GET method

    router.route('/admin/posts/create')

        // START POST method
            .post(function(req, res) {

                console.log("New instance");

                var blogpost = new Blogpost(); // create a new instance of a Blogpost model

                blogpost.title = req.body.title; // set the blog title
                blogpost.blogUrl = blogpost.title.toLowerCase().replace(/\s+/g,"-");
                blogpost.author = req.body.author; // set the author name
                blogpost.tagline = req.body.tagline; // set the tagline
                blogpost.content = req.body.content; // set the blog content
                blogpost.category = req.body.category; // set the category
                blogpost.tags = req.body.tags; // set the tags
                    //Save Blog Post
                    blogpost.save(function(err) {
                        if (err)
                            res.send(err);

                        res.redirect(303, '/'); //NEEDS TO BE CHANGED
                    });

            }) // END POST method


            .get(function(req, res) {
                res.render('pages/blogpost-create');
            });

    function getSearchCriteria(params) {
          return {
              blogUrl: params.blogpost_blogUrl
          };
    }



    router.route('/blog/:blogpost_blogUrl')

        .get(function (req, res) {
             var searchCriteria = getSearchCriteria(req.params);
             Blogpost.findOne(searchCriteria, function (err, blogpost) {
                 if (err)
                     res.send(err);
                 res.render('pages/blogpost', {
                     blogpost: blogpost
                 })
             })
         })
         .put(function (req, res) {
             var searchCriteria = getSearchCriteria(req.params);
             var updated = getBlogpostUpdate(req.body)
             Blogpost.findOneAndUpdate(searchCriteria, updated, function (err, updated) {
                 if (err)
                     res.send(err);


                 res.json({ message: 'Blog updated.' });
             });
         })
         .delete(function (req, res) {
             var searchCriteria = getSearchCriteria(req.params);
             Blogpost.findOneAndRemove(searchCriteria, function (err, removed) {
                 if (err)
                    res.send(err);

                 res.json({ message: 'Successfully deleted' });
             });
         });

    module.exports = router;

blogpost.ejs:

<html>
<head>
    <% include ../partials/head %>
</head>

<body>

    <header>
        <% include ../partials/header %>
    </header>

    <div class="grid">
        <div class="col-1-1">
            <div class="blog-content">
                <h1><%= blogpost.title %></h1>
                <p><%= blogpost.content %></p>
            </div>
        </div>
    </div>


    <footer>
        <% include ../partials/footer %>
    </footer>

</body>
</html>

0 个答案:

没有答案