SweetAlert 응답을 기다리십시오

Jaims

현재 드롭 다운에서 값을 변경할 때 사용자에게 확인을 요청하는 기능이 있습니다. 이것은 표준을 사용하여 잘 작동합니다 JavaScript confirm(). 여기에 바이올린이 있습니다.

var prev_val;
$('#dropdownId').focus(function () {
    prev_val = $(this).val();
}).change(function () {
    $(this).blur();
    var success = confirm('Are you sure you want to change the Dropdown?');
    if (success) {
        // Proceed as normal.
    } else {
        // Reset the value & stop normal event
        $(this).val(prev_val);
        return false;
    }
});

하지만을 사용 SweetAlert하면 확인 / 취소하기 전에 항상 변경 이벤트가 발생합니다. 즉, 새 값을 선택하고 "취소"를 눌러도 이벤트를 중지하고 이전 값을 재설정하지 않습니다. 일반 JavaScript confirm대화 상자에서 수행합니다.

var prev_val;
$('#' + dropdownId).focus(function () {
    prev_val = $(this).val();
}).change(function (e) {
    $(this).blur();
    return swal({
        title: "Are you sure?",
        text: "Do you want to change the dropdown?",
        type: "warning",
        showCancelButton: true,
        confirmButtonColor: "#DD6B55",
        confirmButtonText: "Yes",
        cancelButtonText: "No",
        closeOnConfirm: true,
        closeOnCancel: true
    },
            function (isConfirm) {
                if (isConfirm) {
                    e.preventDefault();
                    return true;
                } else {
                    $(this).val(prev_val);
                    return false;
                }
            });
});

예를 들어 함수 에서 반환 하고 작동하지 않는 함수 에서 반환하는 것과 JavaScript같이 유효하지 않을 수도 있다는 점도 주목할 JavaScript만합니다 .confirmswal

그러나 인터넷 검색 후 비슷한 문제가있는 사람들을 찾았습니다.

그러나 그것은 어떤 행동을 방해하기 때문에 약간 엉망인 것처럼 보이지만 확인을 선택하면 기본적으로 호출되어야 할 함수를 다시 만듭니다. 아주 간단한 것에 대한 해킹처럼 보입니다.

SweetAlert일반 confirm대화 처럼 행동 할 가능성이 있습니까?

frncsdrk

thisin swal은 선택이 아니라 달콤한 경고 대화 상자 이므로 값이 다시 설정되지 않습니다 . 따라서 변경 이벤트에서 변경된 선택 요소를 보유하는 변수를 정의하고 사용자가 '아니오'를 클릭 할 때 값을 다시 설정하는 데 사용해야합니다.

.change(function(e) {
    var select = this; // save select element to variable

    $(this).blur();
    return swal({
        title: "Are you sure?",
        text: "Do you want to change the dropdown?",
        type: "warning",
        showCancelButton: true,
        confirmButtonColor: "#DD6B55",
        confirmButtonText: "Yes",
        cancelButtonText: "No",
        closeOnConfirm: true,
        closeOnCancel: true
    },
    function(isConfirm) {
        if (isConfirm) {
            e.preventDefault();
            return true;
        } else {
            $(select).val(prev_val); // use select reference to reset value
           return false;
        }
    });
});

바이올린 에서 작동하는 예제를 찾을 수 있습니다 .

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

돌아 오기 전에 응답을 기다리십시오.

분류에서Dev

여러 Spring WebClient Mono 응답을 기다리십시오.

분류에서Dev

발리 응답을 기다린 다음 ListView를 업데이트하십시오.

분류에서Dev

추가 실행 전에 http.request 응답을 기다리십시오.

분류에서Dev

xmlhttprequest가 처리기에서 응답을 받도록 기다리도록 만드십시오.

분류에서Dev

특정 응답을 기다린 후 다음 명령을 실행하십시오.

분류에서Dev

Cypress에서 응답 본문이 변경 될 때까지 기다리십시오.

분류에서Dev

대답을 기다리지 말고 일괄 적으로 계속하십시오.

분류에서Dev

JsDialog 응답을 기다리는 방법?

분류에서Dev

초점을 잃기 전에 클릭을 기다리십시오

분류에서Dev

계속하기 전에 canvas.toBlob ()을 기다리십시오.

분류에서Dev

계속하기 전에 NSNotification을 기다리십시오.

분류에서Dev

rspec에서 json 응답 대신 리디렉션을 고안하십시오.

분류에서Dev

http 요청을 기다리는 양을 얻으십시오

분류에서Dev

Powershell : 함수 반환을 기다리지 마십시오.

분류에서Dev

많은 명령을 실행하고 기다리십시오.

분류에서Dev

변수가 같을 때까지 기다리십시오.

분류에서Dev

ErrorException에 대한 응답을 중단하지 마십시오.

분류에서Dev

useLazyQuery 응답을 기다립니다.

분류에서Dev

응답을 기다립니다 Alamofire swift

분류에서Dev

다음 작업을 수행하기 전에 jquery를 기다리십시오

분류에서Dev

알렉사 스킬 응답 죄송합니다. 요청하신 내용을 처리하는 데 문제가있었습니다. 다시 시도하십시오

분류에서Dev

dangerMode와 입력을 동시에 사용-SweetAlert

분류에서Dev

개체 대신 SweetAlert에서 값을 표시하는 방법

분류에서Dev

JavaScript에서 sweetalert로 확인 기능을 사용하는 방법

분류에서Dev

응답을 캐시하는 응답 헤더?

분류에서Dev

dnsmasq에서 응답 (dns 응답)을받지 못합니다.

분류에서Dev

"사운드 시스템의 응답을 기다리는 중입니다." 오류 대화 상자

분류에서Dev

계속하기 전에 버튼 클릭을 기다리십시오.

Related 관련 기사

  1. 1

    돌아 오기 전에 응답을 기다리십시오.

  2. 2

    여러 Spring WebClient Mono 응답을 기다리십시오.

  3. 3

    발리 응답을 기다린 다음 ListView를 업데이트하십시오.

  4. 4

    추가 실행 전에 http.request 응답을 기다리십시오.

  5. 5

    xmlhttprequest가 처리기에서 응답을 받도록 기다리도록 만드십시오.

  6. 6

    특정 응답을 기다린 후 다음 명령을 실행하십시오.

  7. 7

    Cypress에서 응답 본문이 변경 될 때까지 기다리십시오.

  8. 8

    대답을 기다리지 말고 일괄 적으로 계속하십시오.

  9. 9

    JsDialog 응답을 기다리는 방법?

  10. 10

    초점을 잃기 전에 클릭을 기다리십시오

  11. 11

    계속하기 전에 canvas.toBlob ()을 기다리십시오.

  12. 12

    계속하기 전에 NSNotification을 기다리십시오.

  13. 13

    rspec에서 json 응답 대신 리디렉션을 고안하십시오.

  14. 14

    http 요청을 기다리는 양을 얻으십시오

  15. 15

    Powershell : 함수 반환을 기다리지 마십시오.

  16. 16

    많은 명령을 실행하고 기다리십시오.

  17. 17

    변수가 같을 때까지 기다리십시오.

  18. 18

    ErrorException에 대한 응답을 중단하지 마십시오.

  19. 19

    useLazyQuery 응답을 기다립니다.

  20. 20

    응답을 기다립니다 Alamofire swift

  21. 21

    다음 작업을 수행하기 전에 jquery를 기다리십시오

  22. 22

    알렉사 스킬 응답 죄송합니다. 요청하신 내용을 처리하는 데 문제가있었습니다. 다시 시도하십시오

  23. 23

    dangerMode와 입력을 동시에 사용-SweetAlert

  24. 24

    개체 대신 SweetAlert에서 값을 표시하는 방법

  25. 25

    JavaScript에서 sweetalert로 확인 기능을 사용하는 방법

  26. 26

    응답을 캐시하는 응답 헤더?

  27. 27

    dnsmasq에서 응답 (dns 응답)을받지 못합니다.

  28. 28

    "사운드 시스템의 응답을 기다리는 중입니다." 오류 대화 상자

  29. 29

    계속하기 전에 버튼 클릭을 기다리십시오.

뜨겁다태그

보관