문제

변수에 저장된 문자열 값을 JavaScript 함수로 전달해야합니다.

내 ASP.NET C# 웹 응용 프로그램의 버튼 클릭 이벤트에서 호출합니다.

나는 몇 가지 방법을 시도했지만 정확하게 얻지 못했습니다.

아래는 내가 사용하는 코드입니다

 protected void Button1_Click(object sender, EventArgs e)
    {
        myButton.Attributes.Add("onclick", "openNewWindow(spcd)");
    }

이것은 내 버튼 클릭 이벤트 기능입니다

'OpenNewWindow'는 JavaScript 함수이고 'spcd'는 문자열 변수 인 내 변수이며 공개 문자열 변수입니다.

아래는 내 JavaScript 기능입니다

<script type="text/javascript">

function openNewWindow(spcd) {
//alert("hello");
var tt = spcd;
alert(tt);
var theurl="http://www.gmail.com";
 popupWin = window.open(theurl,
 '_blank',
 'menubar, toolbar, location, directories, status, scrollbars, resizable, dependent, width=640, height=480, left=0, top=0')

}

</script>

그러나 내가 이것을 좋아할 때 내 JavaScript가 작동하지 않는 경우.

누구 든지이 작업을 수행하는 실제 방법을 알 수 있습니까?

도움이 되었습니까?

해결책

제공 한 코드는 C#에서 JavaScript 함수를 호출하지 않습니다. 그것이하는 일은 버튼에 새 속성을 추가하여 JavaScript 이벤트 핸들러를 연결하는 것입니다. 다음에 버튼을 클릭 할 때까지 JS는 실행되지 않습니다. 버튼을 클릭 할 때 JS 함수를 실행하려면 Page_Load에서 수행하는 작업을 수행하거나 버튼의 이벤트 처리기에서는 그렇지 않습니다.

또한 속성의 값으로 전송 해야하는 문자열을 다음과 같은 문자열을 연결할 수 있습니다.

myButton.Attributes.Add("onclick", "openNewWindow('" + spcd + "');";

페이지의 수명주기 이벤트 핸들러 (버튼 클릭 이벤트 핸들러가 아님)에서이를 수행하고 SPCD 변수에 해당 시점에서 필요한 값이 있는지 확인하십시오.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top