2012-04-13 10 views
0

でそれを隠したときに、私はテキストボックスを非表示にし、ユーザーがボタンテキストボックスは、テキストを失い、私はjqueryの

隠すクリックしたときにそれを表示するためにjqueryのを使用しています:

$('#TextBox1').hide(); 

を表示:

$('#TextBox1').show(); 

すべて正常に動作します。しかし、Google Chromeでは、テキストボックスはその価値を失っています。ユーザーがテキストを入力してそれを非表示にして再度表示すると、テキストボックスは空です。

これはGoogle Chromeでのみ発生しています。 Firefoxとエクスプローラでうまく動作します。

おかげ

EDIT: 私は言及を忘れてしまった何かがありますが、私はテキストボックスが含まれており、ここではテキストボックス自体 はJcodeと

$("#EditName").click(function (event) { 
     event.preventDefault(); 
     $("#TextBoxDIV").show(); 
    } 
    $("#HideName").click(function (event) { 
     event.preventDefault(); 
     $("#TextBoxDIV").hide(); 
    } 

とテキストボックスではありませんDIVを隠していますということです

<div id = "TextBox1" class="TextFieldEditSmaller"> 
     @Html.TextBoxFor(m => m.Name) //This is an MVC3 application 
    </div> 

EDIT2:私はちょうどテキストがあることに気づいたが、それが何かの背後に隠されています。テキストボックス内でCTRL + Aを押した後、メモ帳にコピー/貼り付けすると、

+1

あなたのコードをもっと投稿できますか?値は消えてはいけません。 – c0d3Junk13

+0

具体的なテストケースがありますか?これに付随するいくつかの余分なHTMLコードまたはJavaScriptコード? – blocco

+0

私の質問を編集しました。おかげで – Youssef

答えて

0

私は完璧に動作します。

これは私が使用するコードです:私たちはあなたの問題が何であるかを判断することができるように

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script> 
<textarea>test</textarea> 
<button>Hide</button><button>Show</button> 

<script type="text/javascript"> 
$("button:first").on("click", function(json) { 
    $("textarea").hide(); 
}) 
$("button").eq(1).on("click", function(json) { 
    $("textarea").show(); 
}) 
</script> 

はたぶん、あなたはあなたの完全なコードをポスト?伝えるために、そのハードあなたの実際のHTMLコードを見ることなく

0

が、何あなたができることは何か行うことによって、その後のdivを実際のテキストボックスを非表示にしようとされて:あなたは、

$("#HideName").click(function (event) { 
    event.preventDefault(); 
    $("#TextBoxDIV").children(":first-child").hide(); 
    $("#TextBoxDIV").hide(); 
} 

とそのdoesntの仕事の場合をjquerysデータユーティリティを使用してテキストを保存することができます。 http://api.jquery.com/jQuery.data/

その後、showのテキストボックスを再度入力します。 http://api.jquery.com/text/ 注:私が.children( ":first-child")を使用した理由は、mvc3アプリケーションがhtmlに変換されるためですそのID /クラス(もしあれば)がどんなものになるかは分かりません

関連する問題