5

の確認について質問stringです。

stringはからのものなのでckeditor、ユーザーは何でも入力できます。

variable名前は次のとおりですhtmlData

test here<br />
<table border="1" cellpadding="1" cellspacing="1" style="width: 500px;">
    <tbody>
        <tr>
            <td>
                111</td>
            <td>
                222</td>
        </tr>
        <tr>
            <td>
                333</td>
            <td>
                444</td>
        </tr>
        <tr>
            <td>
                555</td>
            <td>
                666</td>
        </tr>
    </tbody>
</table>
<br />
second test 

tableユーザーが構造を追加したかどうかを検出したいのですが、試してみました

 if(htmlData.indexOf('</table>').length > -1){
             console.log('table detected')
        }

しかし、それは私の中に何も表示されませんconsole。誰でもこれについてヒントを与えることができますか?

本当にありがとう!

4

6 に答える 6

3

使用する -

if(htmlData.indexOf('</table>') > -1){
         console.log('table detected')
}

または、jQueryを使用して任意のタグを見つけることができます-

var el = $("<div>"+htmlData+"</div>");
if(el.find("table").length>0){
    console.log("it contains table");
}

任意のタグ、クラス、ID、または任意の css セレクターで機能します。

var el = $(htmlData);
if(el.find(".some-class").length>0){
    console.log("it contains some-class");
}
于 2013-07-29T16:55:53.547 に答える
3

あなたはそれを使用することができます:

if(/<table>/i.test(htmlData));
于 2013-07-29T16:57:28.530 に答える
1

なぜ長さですか?

if(htmlData.indexOf('</table>') > -1){
         console.log('table detected')
    }

これはうまくいくはずです。indexOf は、見つからない場合はインデックス (-1) を返します。配列ではないため、長さプロパティは定義されていません

于 2013-07-29T16:56:44.407 に答える