3

私は2つのラベルを持っています:

  <asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
  <asp:Label ID="Label2" runat="server" Text="Label"></asp:Label>

そして私はjavascriptでinnerHTMLを設定しました:

document.getElementById('Label1').innerHTML = position.lat();
document.getElementById('Label2').innerHTML = position.lng();

コードビハインドでこれらのラベル値を取得するにはどうすればよいですか?私は試してみます:

TextBox2.Text = Label1.Text;

更新:画鋲の場所を取得する必要があります:

  <artem:GoogleMap ID="GoogleMap1" runat="server" 
    EnableMapTypeControl="False" MapType="Roadmap" >        
  </artem:GoogleMap>      
  <artem:GoogleMarkers ID="GoogleMarkers1" runat="server" 
    TargetControlID="GoogleMap1" onclientpositionchanged="handlePositionChanged">
  </artem:GoogleMarkers> 
  <asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
  <asp:Label ID="Label2" runat="server" Text="Label"></asp:Label>

<script type="text/javascript">
  var list = document.getElementById("Label1");
  function handlePositionChanged(sender, e) {
    printEvent("Position Changed", sender, e);
  }
  function printEvent(name, sender, e) {
    var position = e.latLng || sender.markers[e.index].getPosition();
    document.getElementById('Label1').innerHTML = position.lat();
    document.getElementById('Label2').innerHTML = position.lng();
  }
</script>

protected void Button1_Click(object sender, EventArgs e)
{
    TextBox2.Text = Label1.Text;// return value: Label
}
4

3 に答える 3

6

サーバー側で値にアクセスすることはできません。そのためには、非表示のフィールドを使用する必要があります。

<asp:HiddenField ID="Hidden1" runat="server" />

次の手順を実行して、HiddenフィールドにinnerHtml値を設定します。

document.getElementById('<%= Hidden1.ClientID %>').value = position.lat();

次に、次のようにしてサーバー側からアクセスできます。

TextBox1.Text = Hidden1.Value;
于 2012-08-31T15:03:48.550 に答える
1

Labelページがポストバックされると、ラベルのコンテンツがサーバーにポストされないため、コントロールを使用してこれを行うことはできません。ある種の入力コントロールを利用する必要があります。おそらく、隠された入力が最善の策でしょう。

于 2012-08-31T15:04:47.120 に答える
1

以下のような隠しフィールドを取ります

<asp:HiddenField ID="hdnBody" ClientIDMode="Static" runat="server" />

次に、以下のようにJqueryでその値を設定します

<script>
function GetEmailID() {
    var bodyHtml = $("#editor").html();

    $("#hdnBody").val(bodyHtml);  
}
</script>

そして、背後にあるコードでこれを実行して取得します

string body = hdnBody.Value;
于 2014-03-04T17:52:27.557 に答える