을 지정하는 방법을 자바스크립트를 실행할 때 ModalPopupExtender 표시

StackOverflow https://stackoverflow.com/questions/5482

문제

이 ASP.NET AJAX ModalPopupExtenderOnCancelScriptOnOkScript 특성,하지만 그것은 보이지 않는 OnShowScript 을 제공합니다.고 싶을 지정 자바 스크립트 함수를 실행할 때마다 팝업 창이 표시됩니다.

과거에 상황이,내가 설정 TargetControlID 을 더미 제어하고 제공하는 내 자신의 통제하는 첫 번째는 일부 JS 코드 및 다음 사용 JS 방법을 표시합니다.그러나 이 경우에는,나를 보여주는 팝업 모두에서 클라이언트와 서버 측의 코드입니다.

누구나 알고의 방법이 있을까요?

BTW,필요 이 때문에 나는 텍스트 상자에는 모달을 만들고 싶습니다 TinyMCE 편집기입니다.하지만 TinyMCE init 스크립트를 작동하지 않는 눈에 보이지 않는 텍스트,그래서 나는 방법을 찾아 실행할 시간에 그것의 모달 표시

도움이 되었습니까?

해결책

hmmm...나 예쁜지 는 다음과 같은 이벤트에 대한 MPE...이는 내 머리 위로하지만,나는 당신이 추가할 수 있는 이벤트를 처리기를 다음과 같은 이벤트에 page_load

function pageLoad()
{
    var popup = $find('ModalPopupClientID');
    popup.add_shown(SetFocus);
}

function SetFocus()
{
    $get('TriggerClientId').focus();
}

나는 확실하지 않 tho 는 경우이 도움이 될 것입니다 당신은 전화로 그 서버에서 측 tho

다른 팁

간단한 방법은 여기에서 그것을 할 태그:

<ajaxToolkit:ModalPopupExtender 
                ID="ModalPopupExtender2" runat="server" 
                TargetControlID="lnk_OpenGame" 
                PopupControlID="Panel1" 
                BehaviorID="SilverPracticeBehaviorID"  >
            <Animations>
                <OnShown>
                     <ScriptAction Script="InitializeGame();" />  
                </OnShown>
            </Animations>                
</ajaxToolkit:ModalPopupExtender>

을 사용해야 합니다 BehaviorIDmpeBID 귀하의 ModalPopupExtender.

function pageLoad() {
    $find('mpeBID').add_shown(HideMediaPlayer);
}

function HideMediaPlayer() {
    var divMovie = $get('<%=divMovie.ClientID%>');
    divMovie.style.display = "none";
}

를 사용하는 경우 버튼 또는 하이퍼링크 또는 무언가를 트리거하는 팝업 표시,당신은 또한 추가 처리기의 onClick 이벤트 트리거해야하는 아직도 불 모달 팝업 및 실행 javascript 에서 동일한 시간입니까?

이 ModalPopupExtender 수정 버/하이퍼링크는 당신이 그것을 말하는"trigger"요소입니다.Onclick 스크립트를 추가 트리거하기 전에 팝업 창이 표시됩니다.내가 원하는 스크립트를 화재 후 팝업 창이 표시됩니다.

또한,아직도 나를 할 때의 문제는 나를 보여달에서 server side.

TinyMCE 작업에는 보이지 않는 텍스트 상자에 숨기는 경우 css(display:none;) 당신은"onclick"이벤트에 TargetControlID,대한 init 를 사용하는 경우,당신은 또한 updatepanel

두달 forms:

var launch = false;
var NameObject = '';

function launchModal(ModalPopupExtender) {
    launch = true;
    NameObject = ModalPopupExtender;
}

function pageLoad() {
    if (launch) {
        var ModalObject = $find(NameObject);
        ModalObject.show();
        ModalObject.add_shown(SetFocus);
                }
} 

function SetFocus() {
    $get('TriggerClientId').focus();
}

Server side:behand

protected void btnNuevo_Click(object sender, EventArgs e)
{
    //Para recuperar el formulario modal desde el lado del sercidor
    ScriptManager.RegisterStartupScript(Page, Page.GetType(), "key", "<script>launchModal('" + ModalPopupExtender_Factura.ID.ToString() + "');</script>", false);
}
var launch = false;

function launchModal() {
    launch = true;
}

function pageLoad() {
    if (launch) {
          var ModalPedimento = $find('ModalPopupExtender_Pedimento');
          ModalPedimento.show();
          ModalPedimento.add_shown(SetFocus);
    }
}

function SetFocus() {
    $get('TriggerClientId').focus();
}
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top