javascript - 如何获取innerHTML中的原始html字符串?

标签 javascript jquery html innerhtml highlight.js

问题:当我尝试使用关于jsx代码的highlight.js时,html标签消失。

原始来源:

<pre>
    <code class="javascript">
    const { Link } = ReactRouter;

    App.QnAChild = React.createClass({
      mixins: [Mixins.Accounts, Mixins.Utils],

      render() {
        let name = "";

        if (this.props.user && this.props.user.name) {
          name = this.props.user.name;
        }    

        return (
          <tr>
            <td>
              {this.props.index + 1}
            </td>
            <td>
              <Link to={`/qna/${ this.props._id }`}
                    className="title-link"> {this.props.title}
              </Link>
            </td>
            <td>
              <Link to="">
                {name}
              </Link>
            </td>
            <td>
              {this.momentKoreanDate(this.props.createdAt, 5)}
            </td>
          </tr>
        )
      }
    });        
    </code>
</pre>

渲染源之后:

const { Link } = ReactRouter;
App.QnAChild = React.createClass({
    mixins: [Mixins.Accounts, Mixins.Utils],
    render() {
        let name = "";
        if (this.props.user && this.props.user.name) {
            name = this.props.user.name;
        }
        return (
            {this.props.index + 1}
            {this.props.title}
            {name}
            {this.momentKoreanDate(this.props.createdAt, 5)}
        )
    }
});

$('预编码')[0].innerHTML:

"const { Link } = ReactRouter; App.QnAChild = React.createClass({ mixins: [Mixins.Accounts, Mixins.Utils], render() { let name = ""; if (this.props.user &amp;&amp; this.props.user.name) { name = this.props.user.name; } return ( {this.props.index + 1} <link to="{`/qna/${" this.props._id="" }`}="" classname="title-link"> {this.props.title} <link to=""> {name} {this.momentKoreanDate(this.props.createdAt, 5)} ) } });  "

为什么innerHTML中的html标签消失了? 如何获取innerHTML中的原始html字符串?

我希望在渲染后获取来源:

const { Link } = ReactRouter;

App.QnAChild = React.createClass({
    mixins: [Mixins.Accounts, Mixins.Utils],

        render() {
            let name = "";

            if (this.props.user && this.props.user.name) {
                name = this.props.user.name;
            }    

            return (
            <tr>
                <td>
                    {this.props.index + 1}
                </td>
                <td>
                    <Link to={`/qna/${ this.props._id }`}
                          className="title-link"> {this.props.title}
                    </Link>
                </td>
                <td>
                    <Link to="">
                    {name}
                    </Link>
                </td>
                <td>
                    {this.momentKoreanDate(this.props.createdAt, 5)}
                </td>
            </tr>
        )
    }
});     

谢谢你的耐心:)

祝你有美好的一天!

最佳答案

"<" = &lt; (lower then)

">" = &gt; (greater then)

<pre>
    <code class="javascript">
    const { Link } = ReactRouter;

    App.QnAChild = React.createClass({
      mixins: [Mixins.Accounts, Mixins.Utils],

      render() {
        let name = "";

        if (this.props.user && this.props.user.name) {
          name = this.props.user.name;
        }    

        return (
          &lt;tr&gt;
            &lt;td&gt;
              {this.props.index + 1}
            &lt;/td&gt;
            &lt;td&gt;
              &lt;Link to={`/qna/${ this.props._id }`}
                    className="title-link"> {this.props.title}
              &lt;/Link&gt;
            &lt;/td&gt;
            &lt;td&gt;
              &lt;Link to=""&gt;
                {name}
              &lt;/Link&gt;
            &lt;/td&gt;
            &lt;td&gt;
              {this.momentKoreanDate(this.props.createdAt, 5)}
            &lt;/td&gt;
          &lt;/tr&gt;
        )
      }
    });        
    </code>
</pre>

您应该将代码存储在变量中:

var myCode = "<html>";
var processed = yourProcessor(myCode);
$('pre code').innerHTML = processed;

关于javascript - 如何获取innerHTML中的原始html字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33044488/

相关文章:

javascript - 无法使用 NodeJS 使用 Google Photos API 上传图像

jquery 高度和宽度在 Internet Explorer 8 (ie8) 中返回不正确的值

javascript - 如何在Draw2D库中监听 Canvas 上的鼠标事件?

javascript - HTML5 仅拖放图像

javascript - jQuery 智能搜索显示/隐藏内容元素

javascript - 使用自定义 Chrome 关闭

html - 文本环绕绝对定位的 div

javascript - 使网站加载更快

javascript - 单击更改 div 背景颜色

javascript - 不使用 jQuery 查找滚动条的垂直位置