2009-12-15 102 views
146

estoy generando una alerta de JavaScript con el siguiente código en la página C# .NET:¿Cómo editar un título de cuadro de alerta de JavaScript?

Response.Write("<script language=JavaScript> alert('Hi select a valid date'); </script>"); 

Se muestra un cuadro de alerta con el título partida que "Mensaje de la página web".

¿Es posible modificar el título?

+1

posible duplicado de [cambio del título de Alerta Javascript] (http://stackoverflow.com/questions/4172022/change-title-of-javascript-alert) – Sjoerd

+2

¿Conoce, ¿que el usuario puede deshabilitar fácilmente las alertas? ¡NO deberías confiar en eso! –

+0

Creo que la pregunta era para JavaScript que es compatible con todas las plataformas y navegadores y no para VBScript, que es estrictamente de IE y Windows, por lo que su uso está limitado a Windows solamente – UserTursty

Respuesta

227

Sigh ... no, no puedes.

Es una función de seguridad/antiphishing.

+16

Si bien esta es una respuesta y está EN HECHO cierto, he determinado que puede crear su propia versión de alerta y que hará lo que quiera. Un simple modal y anula la llamada a la función de alerta. – Fallenreaper

+58

@Fallenreaper Deje de romper el internet. –

+1

¿Cómo es esto una función de seguridad/antiphishing? Tengo curiosidad, no estoy discutiendo. – Tim

64

No, no es posible. Puede usar un cuadro de alerta de javascript personalizado.

pareció un bonito uno usando jQuery

jQuery Alert Dialogs (Alert, Confirm, & Prompt Replacements)

+3

Gracias, pero no estoy interesado en utilizar un buzón de alerta personalizado – subash

+18

La razón por la que no puede cambiar el título, dicho sea de paso, es evitar que los sitios web maliciosos engañen al usuario haciéndole creer que la alerta proviene de su sistema operativo u otra cosa. – benzado

+1

NOTA: Otro usuario ha intentado editar esta respuesta para indicar que el enlace proporcionado llevó a un sitio donde se detectó malware. –

30

Usted puede hacer esto en IE:

<script language="VBScript"> 
Sub myAlert(title, content) 
     MsgBox content, 0, title 
End Sub 
</script> 

<script type="text/javascript"> 
myAlert("My custom title", "Some content"); 
</script> 

(Aunque, realmente deseo que no podía.)

+52

Todos deseamos lo mismo – rahul

+0

@Chris Fulstow lo que puede ser una solución a [esta pregunta] (http://stackoverflow.com/questions/9347654/combo-box-is-getting-vanished-when-an-alert-is -coming) – Tom

+1

Me encanta vbscript, me gustaría que vbscript fuera estandarizado junto con javascript. De esa forma puedo escribir sin la confusión de mayúsculas y minúsculas, y todos los navegadores populares obedecerían mis comandos MWHAHAHA –

4

Para responder a las preguntas en términos de cómo lo solicitó.

Esto es REALMENTE fácil (en Internet Explorer, al menos), lo hice en 17.5 segundos.

Si utiliza la secuencia de comandos personalizada que proporciona cxfx: (colocarlo en su archivo APSX)

<script language="VBScript"> 
Sub myAlert(title, content) 
MsgBox content, 0, title 
End Sub 
</script> 

entonces le puede llamar al igual que llamó la alerta regular. Simplemente modifica tu código a lo siguiente.

Response.Write("<script language=JavaScript> myAlert('Message Header Here','Hi select a valid date'); </script>"); 

¡Espero que te ayude a ti o a alguien más!

+2

Funciona para mí con IE, pero no con Firefox. Gracias de todos modos, rápido y sucio, pero podría ser útil. –

+1

@ Darth. Yo, proly, debería haber mencionado eso. Está usando VBScript. tienes que buscar en google cómo hacer que VBScript se ejecute en Firefox. – kralco626

+2

@ Dath - PS No sé si existe alguna forma de ejecutar VBScript en Firefox. Crearía otro tema llamado algo así como cómo ejecutar este script vb en Firefox y publicar el código que te di más arriba y ver si alguien puede encontrar algo. – kralco626

1

Sí, puedes cambiarlo. si llama a la función VBscript dentro de Javascript.

Aquí es simple ejemplo

<script> 

function alert_confirm(){ 

     customMsgBox("This is my title","how are you?",64,0,0,0); 
} 

</script> 


<script language="VBScript"> 

Function customMsgBox(tit,mess,icon,buts,defs,mode) 
    butVal = icon + buts + defs + mode 
    customMsgBox= MsgBox(mess,butVal,tit) 
End Function 

</script> 

<html> 

<body> 
<a href="javascript:alert_confirm()">Alert</a> 
</body> 

</html> 
+2

Hola @Saeed, está trabajando en IE, pero no funcionará en mozilla & cromo ... –

+1

@ManikandanSethuraju no funcionará en FF y GC ya que no son compatibles con VBScript. – atsurti

10

reemplazar la función window.alert javascript().

window.alert = function(title, message){ 
    var myElementToShow = document.getElementById("someElementId"); 
    myElementToShow.innerHTML = title + "</br>" + message; 
} 

Con esto usted puede crear su propia función alert(). Cree un nuevo diálogo de aspecto 'genial' (a partir de algunos elementos div).

Probado trabajando en Chrome y webkit, no estoy seguro de los demás.

+0

¿Qué es 'someElementId'? ¿a qué etiqueta me refiero? –

+1

'someElementId' es cualquier ID que haya configurado como elemento HTML. –

4

Hay un buen "truco" aquí - https://stackoverflow.com/a/14565029 donde utiliza un iframe con un src vacío para generar el mensaje de alerta/confirmación - no funciona en Android (por razones de seguridad) - pero puede adaptarse a su situación.

+1

Excelente, muy útil ... –

+1

No funciona en más que solo Android. –

1

Cuando inicie o simplemente se una a un proyecto basado en aplicaciones de Internet, el diseño de la interfaz es tal vez bueno. De lo contrario, esto debería cambiarse. Para aplicaciones Web 2.0, trabajará con contenidos dinámicos, muchos efectos y otras cosas. Todas estas cosas están bien, pero nadie pensó en estilizar la alerta de JavaScript y confirmar cuadros. Aquí es el que forma, .. completamente dinámico, JS y CSS impulsado crear el archivo HTML simple

<html> 
<head> 
    <title>jsConfirmSyle</title> 
    <meta http-equiv="Content-Style-Type" content="text/css" /> 
    <meta http-equiv="Content-Script-Type" content="text/javascript" /> 
    <script type="text/javascript" src="jsConfirmStyle.js"></script> 
    <script type="text/javascript"> 

     function confirmation() { 
     var answer = confirm("Wanna visit google?") 
     if (answer){ 
     window.location = "http://www.google.com/"; 
     } 
    }  

    </script> 
    <style type="text/css"> 
    body { 
     background-color: white; 
     font-family: sans-serif; 
     } 
    #jsconfirm { 
     border-color: #c0c0c0; 
     border-width: 2px 4px 4px 2px; 
     left: 0; 
    margin: 0; 
    padding: 0; 
    position: absolute; 
    top: -1000px; 
    z-index: 100; 
    } 

    #jsconfirm table { 
    background-color: #fff; 
    border: 2px groove #c0c0c0; 
    height: 150px; 
    width: 300px; 
    } 

    #jsconfirmtitle { 
    background-color: #B0B0B0; 
    font-weight: bold; 
    height: 20px; 
    text-align: center; 
} 

#jsconfirmbuttons { 
height: 50px; 
text-align: center; 
} 

#jsconfirmbuttons input { 
background-color: #E9E9CF; 
color: #000000; 
font-weight: bold; 
width: 125px; 
height: 33px; 
padding-left: 20px; 
} 

#jsconfirmleft{ 
background-image: url(left.png); 
} 

#jsconfirmright{ 
background-image: url(right.png); 
} 
< /style> 
    </head> 
<body> 
<p><br /> 
<a href="#" 
onclick="javascript:showConfirm('Please confirm','Are you really really sure to visit google?','Yes','http://www.google.com','No','#')">JsConfirmStyled</a></p> 
<p><a href="#" onclick="confirmation()">standard</a></p> 

</body> 
</html> 

A continuación, crear simples jsConfirmStyle.js de nombre de archivo js. Aquí está el código JS sencilla

ie5=(document.getElementById&&document.all&&document.styleSheets)?1:0; 
nn6=(document.getElementById&&!document.all)?1:0; 

xConfirmStart=800; 
yConfirmStart=100; 

    if(ie5||nn6) { 
    if(ie5) cs=2,th=30; 
    else cs=0,th=20; 
    document.write(
    "<div id='jsconfirm'>"+ 
     "<table>"+ 
      "<tr><td id='jsconfirmtitle'></td></tr>"+ 
      "<tr><td id='jsconfirmcontent'></td></tr>"+ 
      "<tr><td id='jsconfirmbuttons'>"+ 
       "<input id='jsconfirmleft' type='button' value='' onclick='leftJsConfirm()' onfocus='if(this.blur)this.blur()'>"+ 
       "&nbsp;&nbsp;"+ 
       "<input id='jsconfirmright' type='button' value='' onclick='rightJsConfirm()' onfocus='if(this.blur)this.blur()'>"+ 
      "</td></tr>"+ 
     "</table>"+ 
    "</div>" 
); 
    } 

document.write("<div id='jsconfirmfade'></div>"); 


function leftJsConfirm() { 
    document.getElementById('jsconfirm').style.top=-1000; 
    document.location.href=leftJsConfirmUri; 
} 
function rightJsConfirm() { 
document.getElementById('jsconfirm').style.top=-1000; 
document.location.href=rightJsConfirmUri; 
} 
function confirmAlternative() { 
if(confirm("Scipt requieres a better browser!"))  document.location.href="http://www.mozilla.org"; 
} 

leftJsConfirmUri = ''; 
rightJsConfirmUri = ''; 

    /** 
    * Show the message/confirm box 
    */ 
    function  showConfirm(confirmtitle,confirmcontent,confirmlefttext,confirmlefturi,confirmrighttext,con  firmrighturi) { 
document.getElementById("jsconfirmtitle").innerHTML=confirmtitle; 
document.getElementById("jsconfirmcontent").innerHTML=confirmcontent; 
document.getElementById("jsconfirmleft").value=confirmlefttext; 
document.getElementById("jsconfirmright").value=confirmrighttext; 
leftJsConfirmUri=confirmlefturi; 
rightJsConfirmUri=confirmrighturi; 
xConfirm=xConfirmStart, yConfirm=yConfirmStart; 
if(ie5) { 
    document.getElementById("jsconfirm").style.left='25%'; 
    document.getElementById("jsconfirm").style.top='35%'; 
} 
else if(nn6) { 
    document.getElementById("jsconfirm").style.top='25%'; 
    document.getElementById("jsconfirm").style.left='35%'; 
} 
else confirmAlternative(); 

}

You can download full Source code from here

+1

puedes hacer un demu plz –

0

Usted puede hacer un pequeño ajuste para dejar una línea en blanco en la parte superior.

Me gusta.

 <script type="text/javascript" > 
      alert("USER NOTICE " +"\n" 
      +"\n" 
      +"New users are not allowed to work " +"\n" 
      +"with that feature."); 
     </script> 
5

encontré este Sweetalert para la caja de cabecera modifique para requisitos particulares Javascript.

Por ejemplo

swal({ 
    title: "Are you sure?", 
    text: "You will not be able to recover this imaginary file!", 
    type: "warning", 
    showCancelButton: true, 
    confirmButtonColor: "#DD6B55", 
    confirmButtonText: "Yes, delete it!", 
    closeOnConfirm: false 
}, 
function(){ 
    swal("Deleted!", "Your imaginary file has been deleted.", "success"); 
}); 
Cuestiones relacionadas