2013-03-13 5 views
0

prompt() 나 confirm()과 같은 JavaScript 함수를 작성해, 전술의 함수가 무엇인가를 돌려 줄 때까지의 실행을 기다리고 싶습니다.prompt/confirm 같은 JavaScript 함수를 작성하는 방법

말, 나는 팝업을 열고 값을 반환 할 함수 abc()가 있습니다. 함수가 호출 된 곳에 실행을 유지하려고합니다.

function abc(){ 
     ---------- 
     return ''; 
    } 

    function abc_caller(){ 
     var x = abc(); 
     alert(x); 
    } 

아무에게도 도움이 될 수 있습니까? 귀하의 코드가 있어야한다

+0

* 가능한 복제 : * http://stackoverflow.com/a/1729684/1563422 –

+0

함수를 제어권을 유지하면서 되돌려 보내지 마십시오. –

+0

@DannyBeckett 아니요. 나는 OP가 실제로 블록 ** 동기 함수를 작성하려고 생각합니다. –

답변

0

-http://www.w3schools.com/jsref/met_win_confirm.asp에서

function abc_caller(){ 
     var x = abc(); 
     var r=confirm("Your value is " + x); 
     if (r==true) 
     { 
      alert("You pressed OK!") 
     } 
     else 
     { 
      alert("You pressed Cancel!") 
     } 
    } 

더 많은 예제.

희망이 도움이됩니다.

0

이것은 브라우저 빌더가 원하는 것은 아닙니다. 특정 시간 내에 Javascript가 응답하지 않으면 브라우저가 잘못된 것으로 생각하기 시작하고 Javascript가 실행되지 않도록 사용자에게 묻습니다.

대신 콜백 함수를 만들어야합니다.

+0

죄송합니다. 내 답변을 입력하는 동안 귀하의 답변을 보지 못했습니다 :) – Ramunas

0

이에 대한 콜백을 사용 clould :
함수

function abc(callback){ 
    // whatever code here 
    var result = ""; // or whatever processing result would be 

    if (callback) 
    { 
     callback(result); 
    } 
} 

사용 :

abc(function(result){ 
    alert(result); 
}); 

편집 : 나는 @mrhobo이 제안 된 것과 비슷한 생각

관련 문제