0

htmlをxhtmlに変換しようとしていますが、大なり記号を&gt;自分のifステートメントに変更すると機能しなくなります。と同じ話&<署名。Cdataも機能しません。

function length(elem){
    var input = elem.value;
    if(input.length &gt; 8){
        return true;
    }
    else{
        alert("Please enter equal to or more than 8 characters for username");
        return false;
    }
}
4

2 に答える 2

2

簡単な解決策: XHTML を使用しないでください。ほとんどの場合、それは価値があるよりもはるかに面倒です。

それができない場合: JS を外部ファイルに保持し、src.

それができない場合は、 XHTML を記述して HTML として扱うための互換性ガイドラインを参照してください。

于 2013-02-06T17:21:37.040 に答える
0

HTML、XHTML、または XML で「>」文字を「エスケープ」する理由はありませんが、「<」との対称性のためにエスケープする必要がある場合を除きます。

XHTML では、 の内容はscriptと見なされ#PCDATAます。これは、エンティティ参照が認識されることを意味します。それで問題ありませんが、これはドキュメントを実際に XHTML として処理&gt;するブラウザにのみ適用されます。実際には、XML コンテンツ タイプを宣言し、古いバージョンの IE ではそれが機能しなくなるという事実を受け入れる必要があります。どうやらあなたはそうしていないようで、実際には HTML ルールが適用され、コンテンツはプレーン テキストとして解析され、ブラウザーの JavaScript インタープリターは文字通り取得して吐き出します。そして HTML モードでは、doctype が何を言っているように見えても、セクションはただの乱雑なデータです。script&gt;CDATA

したがって、@Quentin が示唆するように、XHTML を実行しないでください。実際にXHTML を使用する必要がある場合は、外部スクリプトを使用してください。

于 2013-02-06T18:23:00.857 に答える