2011-02-10 7 views
21

나는이 링크가 너의 호의로 대답 해? " 기능을 실행할 수있는 "예"라는 두 개의 버튼과 포스트 백을 취소하고 사용자를 페이지에 유지하는 "아니오"라고 말하는 다른 버튼이 있습니다.자바 스크립트 경고 상자가

어떻게하면됩니까? 고마워요 :)

+4

'의 onclick = "반환 확인 (this.innerText +를 '?');"당신은 닫는 대괄호를 놓치고 –

답변

31

당신은 온 클릭으로, 확인 함께 할 쉽게 할 수 있습니다이 확인을 말할 것이다하지만

<p id="accept-favor"><a title="Accept this Favor" 
    href="?wp_accept_favor=<?php comment_ID(); ?>" 
    onclick="return confirm('Are you sure you would like to accept this reply as your favor?');" 
    >Accept this Favor</a></p> 

는/아니오/대신 네의 취소. 정말로 예/아니오를 원하면 사용자 정의 대화 상자를 사용해야합니다. 다른 답변이 직접 온 클릭에 대해 이야기로

+0

'. onClick 코드는 onclick = "return confirm ('이 회신을 받아들이 실까요?');" – TMC

+0

죄송합니다, 고맙습니다. –

12

당신은 onclick="return confirm('Are you sure?');" 쓸 수 있습니다.

confirm function은 확인/취소 대화 상자를 표시하고 사용자가 확인을 클릭하면 true을 반환합니다.
return 처리기 onclick 처리기의 false 처리기는 클릭의 기본 동작을 취소합니다.

1

, 나는 addEventListenerpreventDefault 방법을 사용하여 "좋네요"(IMO = 내 의견) 버전에 대한 해결책을 제시하고 싶습니다. 이 방법을 사용하면 더 많은 것을 바인딩 할 수 있습니다. 처리기를 클릭하십시오.

HTML

<a href="#" id="confirmClickActionElementId">click me</a> 

자바 스크립트

document 
    .getElementById("confirmClickActionElementId") 
    .addEventListener("click", function(e){ //e => event 
     if(! confirm("Do you really want to do this?")){ 
      e.preventDefault(); // ! => don't want to do this 
     } else { 
      //want to do this! => maybe do something about it? 
      alert('Ok, lets do this!'); 
     } 
    }); 

바이올린 : http://jsfiddle.net/ouyf86ya/

... 또는 이전 "return"방법 :

document 
    .getElementById("confirmClickActionElementId") 
    .addEventListener("click", function(){ 
     return confirm("Do you really want to do this?") ; 
    }); 

바이올린 :이 기능을 사용할 수 있습니다 http://jsfiddle.net/y2jLpkbb/

6

:

myFunction() { 
    var x; 
    if (confirm("Are you sure?") == true) { 
     x = "You pressed OK!"; 
    } else { 
     x = "You pressed Cancel!"; 
    } 
    return x; 
} 
myFunction(); 
관련 문제