2010-08-17 3 views
0

ASP가 있습니다 (코드는 아래 참조). 이벤트 핸들러가 작동하지만 자바 스크립트 함수의 결과 인 문자열을 이벤트 핸들러 함수에 전달하려고합니다. 그렇게 할 수있는 방법이 있습니까? 방법으로 당신이 요구하는지클릭하면 ASP.Net Button 컨트롤에 매개 변수를 전달합니다.

<asp:Button runat="server" ID="Button1" OnClick="Button1_Click" Text="Run" /> 

답변

2

일반적으로 사용자가 수행하는 방법은 자바 스크립트로 입력 컨트롤을 수정하여 Button 클릭으로 값이 다시 게시되도록하는 것입니다. 사용자가 시각적으로 자바 스크립트가 수정하기 위해 수정중인 데이터를 볼 수 없도록하려면 HiddenField에 쓸 수 있습니다.

OnClientClick을 사용하면 수정 된 값이 입력 컨트롤에 입력되도록 다시 게시하기 전에 javascript를 실행하도록 설정할 수 있습니다. 예 :

<asp:Button ID="yourButton" runat="server" Text="Click Me!" 
    OnClientClick="YourFunctionToAddStringToControl(); return true;" 
    OnClick="yourButton_Click" /> 

그래서 당신은 단지 HiddenField에 값 또는 다른 입력 컨트롤을 쓰고 수정 된 자바 스크립트 기능을 YourFunctionToAddStringToControl에 전화를 교체해야합니다. 그런 다음 서버 사이드 클릭 핸들러를 업데이트하여 필드에 액세스하십시오.

사이드 노트 : 자바 스크립트를 사용하여 HiddenField과 같은 서버 측 컨트롤에 쓸 때는 <%= yourHiddenField.ClientID %>을 사용하여 올바른 컨트롤 이름을 얻는 것을 잊지 마십시오.

2

하지 .. 그러나 ...

당신은 ASP 추가 할 수 있습니다에 HiddenField를하고 문자열하기에 HiddenField의 값을 수정하기 위해 자바 스크립트를 사용합니다. 그런 다음 버튼 클릭 이벤트에서 액세스 할 수 있습니다.

예제는 here입니다.

+0

버튼을 누를 때 javascript 기능을 실행할 수있는 방법이 있습니까? – jamesatha

+0

예, 여기를 참조하십시오. http://msdn.microsoft.com/en-us/library/aa479011.aspx – David

관련 문제