2

タイトルがわかりずらくて申し訳ありませんが、他の言い方が思い浮かびませんでした。以下は、私が試したコードのサンプルです。

<input type="text" id="hor_delim" value="\t" size="2" />
var split = String(document.getElementById('hor_delim').value);
var field = List[i].split(split);

List は配列で、各項目はテキスト領域からの 1 行です。このコードの目的は、行をタブ文字で分割することですが、何らかの理由で (調査を通じて) 推測または把握できないため、\t をタブ文字として評価するのではなく、リテラルの \t として評価します。私は eval() を使用してみましたが成功しなかったので、ここで助けていただければ幸いです。


以下の(受け入れられた)解決策について考え始めた後、なんとかこれを解決できました。これが私が思いついたものです。特異性という点では少しハックですが、うまくいきます。

var split = split.replace("\\t","\t");
4

1 に答える 1

4

&#09;の代わりに HTML エンティティを使用し\tます。

<input type="text" id="hor_delim" value="&#09;" size="2" />​

http://jsfiddle.net/A8Mnj/

于 2012-04-30T23:51:18.677 に答える