2011-08-02 11 views
0

に値を取得する私は、このHTMLタグがあります。JavaScriptが含まれるHTMLタグを変更し、サーバ側

<span id="pricea" runat="server">13323223</span>と私はJavaScriptでこの値を変更しています:

私がクリックした後にポストバックん今
<script type="text/javascript"> 
$(function() { 
    $("#pricea").hover(function() { 
     document.getElementById("pricea").innerHTML = "1234" 
     }); 
}); 
</script> 

を、 asp:Button、スパンの値が元の値に戻り、JavaScriptで変更された新しい値を使用することができません。

ので、私の質問は、私は多分のRequest.Form(「pricea」)を使用と思ったが、それが唯一の入力フィールドのために働いているように見える。それがあった後、私は(このスパンの値を得ることができる方法

JavaScriptで変更)サーバー側で?任意のヘルプ

+0

したがって、クライアントのスパンinnerHTMLのみを更新していますか?変更をサーバーに保存したり、新しいデータセットを表示したりする必要はないと思いませんか? $ .ajax関数を使用すると、ページを更新せずに値を更新できます。 – Rumplin

答えて

2

HTML文書の

おかげで、戻ってサーバーにフォームのフィールドでのみコンテンツを投稿していません。

値をサーバーに送信する場合は、フォームフィールドに値を入力する必要があります。あなたがspanを変更する場合さて、あなたはまた、非表示のフィールドを変更

<asp:Hidden name="pricea_copy" id="pricea_copy" /> 

:あなたはスパンのコンテンツのコピーを保持することができますフォームに隠しフィールドを追加することができます

document.getElementById("pricea").innerHTML = "1234"; 
document.getElementById("pricea_copy").value = "1234"; 

ポストバックの後、pricea_copy.Valueを使用して非表示フィールドの変更された値にアクセスし、それを使用して新しいページのスパンタグの内容を設定できます。

+0

ありがとうGuffa、私の唯一の選択肢ならあなたのアドバイスを使用します – baaroz

+0

@baaroz:これは唯一の選択肢ではありませんが、最も簡単なものです。もう1つの選択肢は、たとえば、ブラウザに値をサーバーに送るためのクッキーを作成することです。 – Guffa

+0

はい、このオプションは理想的ではありません。ちょっと不器用です。「reqeust.form」のようなものがあります。ありがとう – baaroz