2009-10-21 8 views
5

大きなテキスト(たとえば、文字列の長さが600000)のテキストエリアの値を設定しようとすると、ブラウザ(Firefox 3.5.3)がフリーズします。TextAreaの大きなテキストでコンピュータがフリーズ

テキストは1行で表示されるため、テキストエリア自体でテキストの折り返しを行う必要があります。私はこれが問題を引き起こすと思います。

誰でもこの問題の修正を知っていますか?

答えて

8

Firefoxのtextareaの最大サイズは64Kです(ちょうど32Kでもかまいません)。 600,000文字以上です。textareaに貼り付けているテキストのサイズが実際にそのサイズを超えている場合は、何もできません。

もちろん、フィールドに入るデータに何らかのタイプの制限を入れ、そのデータが適合しない理由についてユーザーにいくつかのフィードバックを与えることもできます。

+0

もっと知っているほど。その情報をありがとう。 – ty812

3

基本的に、このような種類のデータサイズ用に設計されたコントロールはありません。なぜなら、すべての情報をユーザーに一度に提示する意味がないからです。

コントロールがデータを処理しても、合理的な方法でデータをナビゲートできないため、実際には使用できません。

+1

なぜdownvote?あなたが間違っていると思われることを説明しなければ、答えを改善することはできません。 – Guffa

1

他の人が言っているように、これは処理しようとしているデータの種類によっては最適な解決策ではないかもしれません。

本当に必要な場合は、Javascriptを使用し、「編集可能な」DIVを使用することを検討してください。私はこれを自分で試したことはありませんが、非常に限られたtextareaフォーム要素に代わるものが必要な場合は、常にオプションとして保持しています。

私はちょうどここに開始し、話題にもう少し研究を行うだろう:

How to make an HTML <div> element editable cross-browser?

理論的には、これはそれが含まれているか、あなたは限り、それに貼り付けることができますどのくらいのテキスト上の任意の制限を持つべきではありません私の知る限り。答えは少し遅れ確かに来るが、テキストエリアまたは編集可能なdiv要素内のテキストの大きな塊のあなたのペースト操作をスピードアップするためには、単純にオートコンプリートを無効に

5

<div onClick="this.contentEditable='true';" autocomplete="off"> 
    lorem ipsum dolor lorem ipsum dolorlorem ipsum dolor 
</div> 
9

スペルチェッカーを無効にする(中Firefox 7.0では、[設定]ウィンドウの[私の入力したスペルチェックをと入力してください]チェックボックスをオフにします)。

spellcheck="false"属性をHTMLのテキストエリアに追加することもできます。

関連する問題