선택 드롭 다운으로 블레이저 onchange 이벤트

asp.net-core blazor c#

문제

그래서 선택 드롭 다운 값이 변경 될 때 간단한 onchange를 실행하려고 애써 왔습니다. 이렇게 :

<select class="form-control d-flex" onchange="(dostuff())">
    @foreach (var template in templatestate.templates)
    {
        <option value=@template.Name>@template.Name</option>
    }
</select>

메서드 호출과 함께 :

<select class="form-control d-flex" onchange="(dostuff())">
    @foreach (var template in templatestate.templates)
    {
        <option value=@template.Name>@template.Name</option>
    }
</select>

브라우저에서이 오류가 발생하여 방향을 재조정해도 문제가 발생하지 않습니다.

<select class="form-control d-flex" onchange="(dostuff())">
    @foreach (var template in templatestate.templates)
    {
        <option value=@template.Name>@template.Name</option>
    }
</select>

내가 누락 된 명백하고 중요한 열쇠가 있습니까? 왜냐하면 같은 페이지에서 잘 작동하는 버튼 onclick 이벤트가 있기 때문입니다.

수락 된 답변

귀하의 답변은 cshtml에 있어야합니다 :

<select onchange=@DoStuff>
    @foreach (var template in templates)
    {
        <option value=@template>@template</option>
    }
</select>

그렇다면 @functions는 다음과 같아야합니다.

<select onchange=@DoStuff>
    @foreach (var template in templates)
    {
        <option value=@template>@template</option>
    }
</select>

당신은 또한 바인딩을 사용할 수 있습니다 ...

<select onchange=@DoStuff>
    @foreach (var template in templates)
    {
        <option value=@template>@template</option>
    }
</select>

하지만 onchange = @ DoStuff는 선택시 논리를 수행 할 수있게합니다.


인기 답변

처음에는 올바른 바인드 구문을 사용하지 않습니다.

onchange="@dostuff"

@




아래 라이선스: CC-BY-SA with attribution
와 제휴하지 않음 Stack Overflow
이 KB는 합법적입니까? 예, 이유를 알아보십시오.
아래 라이선스: CC-BY-SA with attribution
와 제휴하지 않음 Stack Overflow
이 KB는 합법적입니까? 예, 이유를 알아보십시오.