2015-01-17 1 views
1

뒤에 코드에서 자바 스크립트에 의해 변경 IMG SRC를 얻을하는 방법이 내 클라이언트 코드 :C# .NET을

<form id="form1" runat="server"> 
    <div> 
     <img id="mm" runat="server" /> 
    </div> 
    <asp:Button ID="Button1" runat="server" Text="Button" OnClick="Button1_Click" /> 
    <script> 
     document.onclick = function() { 
      mm.src = "photo1.jpg"; 
     } 

    </script> 
</form> 

난 뒤에 IMG SRC 코드를 얻으려고하지만, null를 돌려 :

protected void Button1_Click(object sender, EventArgs e) 
{ 
    string s1= Request.Form["mm"]; 
    string s2= mm.Attributes["src"]; 
    string s3 = mm.Src; 
} 

어떻게하면됩니까?

+0

대신 –

+0

을 시도하십시오. 그러나 자바 스크립트로 src를 변경하면 값은 동일하고 변경되지 않습니다. – Mike

+0

가능한 코드 복제본에서 [값을 자바 스크립트로 설정하려면] (http://stackoverflow.com/questions/1409030/to-get-value-set-in-javascript-in-code-behind) –

답변

4

은 간단하지 않습니다. 자바 스크립트로 변경된 후에는 이미지의 src 뒤에있는 코드를 사용할 수 없습니다.

이 정보는 게시물을 다시 게시하더라도 서버로 되돌아 가지 않기 때문입니다.

해결 방법은 src과 같은 시간에 같은 값의 숨겨진 입력 컨트롤에 저장하는 것입니다.

포스트 백 이후에는 해당 컨트롤 유형 만 값을 다시 보내기 때문에 입력 컨트롤에서 값을 읽습니다. 여기

방금 ​​포스트 후 ImgExSrc.Value을 다시 읽어 뒤에 코드

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

<script> 
    document.onclick = function() { 
     mm.src = "photo1.jpg"; 
     document.getElementById("<%=ImgExSrc.ClientID%>").value = mm.src; 
    } 
</script> 

에 코드에서 예 기지이다. 포스트 백으로 만 서버 측에 값을 보낼 수 있습니다.

관련 문제