web-dev-qa-db-de.com

Wie bearbeite ich einen Titel für ein JavaScript-Benachrichtigungsfeld?

Ich generiere eine JavaScript-Warnung mit folgendem Code in der C # .NET-Seite:

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

Es wird eine Warnmeldung mit der Überschrift "Nachricht von Webseite" angezeigt.

Ist es möglich, den Titel zu ändern?

162
subash

Nein, kannst du nicht.

Es ist eine Sicherheits-/Anti-Phishing-Funktion.

243
Pierreten

Nein, das ist nicht möglich. Sie können ein benutzerdefiniertes Javascript-Warnfeld verwenden.

Habe mit jQuery einen Nice gefunden

jQuery-Warnungsdialogfelder (Warnen, Bestätigen und Ersetzen von Eingabeaufforderungen)

65
rahul

Sie können dies in IE tun:

<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>

(Obwohl ich wirklich wünschte, du könntest nicht.)

31
Chris Fulstow

Überschreiben Sie die Funktion javascript window.alert ().

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

Hiermit können Sie Ihre eigene alert() -Funktion erstellen. Erstellen Sie einen neuen "coolen" Dialog (aus einigen div-Elementen).

Getestet mit chrome und Webkit, andere nicht sicher.

11
Derk Jochems

Ich habe dies gefunden Sweetalert zum Anpassen der Header-Box Javascript.

Zum Beispiel

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");
});
9
Abed Putra

Um die Fragen zu beantworten, wie Sie sie gestellt haben.

Das ist eigentlich WIRKLICH einfach (zumindest im Internet Explorer), ich habe es in 17,5 Sekunden geschafft.

Wenn Sie das von cxfx bereitgestellte benutzerdefinierte Skript verwenden: (Fügen Sie es in Ihre apsx-Datei ein.)

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

Sie können es dann so aufrufen, wie Sie es bei der regulären Benachrichtigung getan haben. Ändern Sie einfach Ihren Code wie folgt.

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

Hoffe das hilft dir oder jemand anderem!

4
kralco626

Es gibt hier einen ganz netten "Hack" - https://stackoverflow.com/a/14565029 wo Sie einen Iframe mit einem leeren src verwenden, um die Warn-/Bestätigungsnachricht zu generieren - es funktioniert nicht Android (aus Sicherheitsgründen) - passt aber möglicherweise zu Ihrem Szenario.

4
extraLRG

Sie können eine kleine Änderung vornehmen, um oben eine leere Zeile zu hinterlassen.

So was.

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

Wenn Sie ein Projekt basierend auf Webapplikationen starten oder sich einfach nur einem Projekt anschließen, ist das Design der Benutzeroberfläche möglicherweise gut. Ansonsten sollte dies geändert werden. Für Web 2.0-Anwendungen werden Sie mit dynamischen Inhalten, vielen Effekten und anderem Material arbeiten. All diese Dinge sind in Ordnung, aber niemand hat darüber nachgedacht, die JavaScript-Warnung und die Bestätigungsfelder zu formatieren. Hier ist der Weg, den sie gehen, völlig dynamisch, JS- und CSS-gesteuert. Erstellen Sie eine einfache HTML-Datei

<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>

Erstellen Sie dann den einfachen js-Dateinamen jsConfirmStyle.js. Hier ist einfach js Code

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();

}

Den vollständigen Quellcode können Sie hier herunterladen

1
Shafiqul Islam

Ja, du kannst es ändern. wenn Sie die VBscript-Funktion in Javascript aufrufen.

Hier ist ein einfaches Beispiel

<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>
1
Saeed

Ich hatte ein ähnliches Problem, als ich den Feldtitel und den Schaltflächentitel des Standardbestätigungsfelds ändern wollte. Ich habe mich für das Jquery Ui-Dialog-Plugin entschieden http://jqueryui.com/dialog/#modal-confirmation

Als ich folgendes hatte:

function testConfirm() {
  if (confirm("Are you sure you want to delete?")) {
    //some stuff
  }
}

Ich habe es geändert in:

function testConfirm() {

  var $dialog = $('<div></div>')
    .html("Are you sure you want to delete?")
    .dialog({
      resizable: false,
      title: "Confirm Deletion",
      modal: true,
      buttons: {
        Cancel: function() {
          $(this).dialog("close");
        },
        "Delete": function() {
          //some stuff
          $(this).dialog("close");
        }
      }
    });

  $dialog.dialog('open');
}

Kann hier gesehen werden arbeiten https://jsfiddle.net/5aua4wss/2/

Ich hoffe, das hilft.

0
justMe