문제

우선 일을 검색하여 하루 종일 쓸 수 있고 내 코드에 뭐가 잘못되어 작동하지 않는지 알아낼 수 없다는 것을 언급해야합니다 ...

내 코드에서 확인을위한 모달 대화 상자가 필요 하므로이 jquery 모달 대화 상자를 사용합니다. jQuery 확인

필요한 것은이 기능을 <asp:Button>로 포함시키는 것입니다 ...

내 문제는 대화 상자 팝업 버튼을 클릭하지만 예 / 아니오 버튼이 작동하지 않고 두 대화 상자가 그냥 사라지는 것입니다.

또한 아래 코드를 사용하지만 __doPostBack()는 전혀 아무 것도하지 않고 경고 ( '')와 같은 간단한 JS 코드를 완벽하게 실행합니다.

$("#complexConfirm").confirm({
     title: "Redirect confirmation",
     text: "This is very dangerous, you shouldn't do it! Are you really really sure?",
     confirm: function (button) {
         __doPostBack('complexConfirm', 'OnClick');
     },
     cancel: function (button) {
         return false;
     },
     confirmButton: "Yes",
     cancelButton: "No"
});
.

I 검색 및 대화 상자 원인 요소는 양식 요소의 밖에 나오게되어 양식으로 되돌아 가게해야하지만 코드 아래에서 어떻게 시도하는지 모르고

$("#editEventModal").parent().appendTo(jQuery("form:first"));
.

다른 프로브는 JavaScript 이벤트로 대화 상자가없는 경우, JavaScript를 호출하기 위해 2 개의 버튼을 사용하고 __dopostback을 사용하는 경우 페이지를 새로 고칩니다.하지만 내 버튼 이벤트에옵니다. 코드 뒤에서, 나는 버튼을 onclick 이벤트를 호출하는 여러 가지 방법을 시도하지만, 페이지를 새로 고침하고 내 boonoon onclick mehtod를 호출하지 않습니다 !!!

버튼 선언은 다음과 같습니다.

<asp:Button ID="complexConfirm" ClientIDMode="Static" runat="server" OnClick="TestBTN_Click" Text="Test" />
<asp:Button ID="checkit" ClientIDMode="Static" runat="server" OnClientClick="__doPostBack('<%=complexConfirm.UniqueID%>', '');" Text="CHECK" />
.

이 두 가지 문제에 대해 어떻게해야합니까?

나는 많은 것을 검색하고, 솔루션이 아닌 나를 위해 일한다 !!!

솔루션을 감상하겠습니다, 감사합니다.

도움이 되었습니까?

해결책

ASP의 선언을 알지 못하면 : 버튼을 여기에서 가장 잘 추측합니다.

버튼의 uniqueID를 사용해야합니다. 버튼의 "name"속성, ID가 아닙니다.

__doPostBack('<%=complexConfirm.UniqueID%>', '');
.

또한 버튼이므로 실제로 onClick

를 지정해야하지 않습니다.

편집 : 나는 당신이 성취하려는 것을 시연하는 일을 보여줍니다. 필요에 따라 jQuery 확인에이를 맞춤 설정할 수 있습니다.

aspx :

<asp:Button ID="btnTest1" runat="server" Text="Test1" OnClick="btnTest1_Click" />
.

자바 스크립트 :

<script>
    $('#<%=btnTest1.ClientID%>').confirm({
        text: "This is very dangerous, you shouldn't do it! Are you really really sure?",
        title: "Confirmation required",
        confirm: function (button) {
            // do something
            __doPostBack('<%= btnTest1.UniqueID%>', '');
        },
        cancel: function (button) {
            // do something
        },
        confirmButton: "Yes I am",
        cancelButton: "No",
        post: true
    });
</script>
.

코드 뒤에 :

protected void btnTest1_Click(object sender, EventArgs e)
{
    Response.Write("You clicked YES");
}
.

문제의 일부는 이벤트 이름이 버튼의 이름으로 지정되지 않았다고 생각합니다. 내가 생각하는 AutoEventWireUP를 사용하는 경우, 일치하는 이름으로 이벤트를 찾을 수 없기 때문에 이벤트가 트리거되지 않습니다.

그래서, 내가 한 첫 번째 일은 정전기를 제거했습니다. jQuery를 ASP.NET 생성 ID로 여전히 사용할 수 있습니다. 그런 다음 버튼의 이름이 btnTest1_Click

이므로 이벤트가 btnTest1라는 이름이 지정되었는지 확인했습니다.

다른 버튼이 필요한지 확신 할 수 없습니다. 버튼이 제출하기 전에 확인하려는 것이 확인됩니다.

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