Programing

부울 C # 변수를 javascript 변수에 전달하고 true로 설정하려고합니다.

lottogame 2020. 12. 4. 07:43
반응형

부울 C # 변수를 javascript 변수에 전달하고 true로 설정하려고합니다.


내 .aspx 페이지에서 부울 유형을 예상하는 javascript 함수에 부울 변수 (C #)를 전달하는 문제가 있습니다.

BUt C # 변수는 True를 반환하고 javascript는 대문자를 좋아하지 않습니다.

myjavascript( <%= MyBooleanVariableInCSharp %> );

c # 변수를 문자열로 변환하면 내 javascript 변수가 js bool 값이 아닌 문자열이됩니다!

이 악몽에 대한 해결책은 무엇입니까? ㅋㅋ


이 시도:

myjavascript( <%= MyBooleanVariableInCSharp.ToString().ToLower() %> );

이 작업을 자주 수행해야하는 경우 javascript (또는 js 라이브러리 파일 등) 맨 위에 추가하십시오.

var True = true, False = false;

그런 다음 코딩

myjavascript( <%= MyBooleanVariableInCSharp %> );

잘 작동합니다.

어떤 이유로 변수를 사용하지 않으려는 경우 또 다른 옵션은 다음과 같이 javascript 호출을 작성하는 것입니다.

myjavascript( '<%= MyBooleanVariableInCSharp %>'=='True' );

당신은 또한 이것을 할 수 있습니다.

myjavascript(<%=myBooleanVariableInCSharp ? "true" : "false" %>);

다른 답변은 이전 버전을 대상으로합니다. Razor사용하는 경우 Razor 이전에 이것이 해결책입니다.

myjavascript( @MyBooleanVariableInCSharp.ToString().ToLower() );

C #에는이를위한 기본 제공 메서드가 있습니다. 적어도 .NET v4 이상에서는.

var myBoolean = <% = myBooleanFromCodeBehind.ToJs () %>;


function toBool(s){ 
   return s==="True";
}

var b = toBool("@csharpvariable.ToBoolean()");

참고 URL : https://stackoverflow.com/questions/656715/trying-to-pass-in-a-boolean-c-sharp-variable-to-a-javascript-variable-and-set-it

반응형