2017-01-12 6 views
1

Der folgende Code gibt ein benutzerdefiniertes Dialogfeld (mit HTML-, CSS- und JS-Codes), das von mir erstellt wurde und beim Klicken auf eine Schaltfläche angezeigt wird.Anzeige einer Warnmeldung, wenn eine JavaScript-Funktion ausgeführt wird

<!DOCTYPE html> 
<html> 
<head> 
<style> 
/* The Modal (background) */ 
.modal { 
    display: none; /* Hidden by default */ 
    position: fixed; /* Stay in place */ 
    z-index: 1; /* Sit on top */ 
    padding-top: 100px; /* Location of the box */ 
    left: 0; 
    top: 0; 
    width: 100%; /* Full width */ 
    height: 100%; /* Full height */ 
    overflow: auto; /* Enable scroll if needed */ 
    background-color: rgb(0,0,0); /* Fallback color */ 
    background-color: rgba(0,0,0,0.4); /* Black w/ opacity */ 
} 

/* Modal Content */ 
.modal-content { 
    position: relative; 
    background-color: #fefefe; 
    margin: auto; 
    padding: 0; 
    border: 1px solid #888; 
    width: 80%; 
    box-shadow: 0 4px 8px 0 rgba(0,0,0,0.2),0 6px 20px 0 rgba(0,0,0,0.19); 
    -webkit-animation-name: animatetop; 
    -webkit-animation-duration: 0.4s; 
    animation-name: animatetop; 
    animation-duration: 0.4s 
} 

/* Add Animation */ 
@-webkit-keyframes animatetop { 
    from {top:-300px; opacity:0} 
    to {top:0; opacity:1} 
} 

@keyframes animatetop { 
    from {top:-300px; opacity:0} 
    to {top:0; opacity:1} 
} 

/* The Close Button */ 
.close { 
    color: white; 
    float: right; 
    font-size: 28px; 
    font-weight: bold; 
} 

.close:hover, 
.close:focus { 
    color: #000; 
    text-decoration: none; 
    cursor: pointer; 
} 

.modal-header { 
    padding: 2px 16px; 
    background-color: #5cb85c; 
    color: white; 
} 

.modal-body {padding: 2px 16px;} 

.modal-footer { 
    padding: 2px 16px; 
    background-color: #5cb85c; 
    color: white; 
} 
</style> 
</head> 
<body> 

<h2>Animated Modal with Header and Footer</h2> 

<!-- Trigger/Open The Modal --> 
<button id="myBtn">Open Modal</button> 

<!-- The Modal --> 
<div id="myModal" class="modal"> 

    <!-- Modal content --> 
    <div class="modal-content"> 
    <div class="modal-header"> 
     <span class="close">&times;</span> 
     <h2>Modal Header</h2> 
    </div> 
    <div class="modal-body"> 
     <p>Some text in the Modal Body</p> 
     <p>Some other text...</p> 
    </div> 
    <div class="modal-footer"> 
     <h3>Modal Footer</h3> 
    </div> 
    </div> 

</div> 

<script> 
// Get the modal 
var modal = document.getElementById('myModal'); 

// Get the button that opens the modal 
var btn = document.getElementById("myBtn"); 

// Get the <span> element that closes the modal 
var span = document.getElementsByClassName("close")[0]; 

// When the user clicks the button, open the modal 
btn.onclick = function() { 
    modal.style.display = "block"; 
} 

// When the user clicks on <span> (x), close the modal 
span.onclick = function() { 
    modal.style.display = "none"; 
} 

// When the user clicks anywhere outside of the modal, close it 
window.onclick = function(event) { 
    if (event.target == modal) { 
     modal.style.display = "none"; 
    } 
} 
</script> 

</body> 
</html> 

Ich möchte das Dialogfeld anzeigen, wenn eine Bedingung in einer Javascript-Funktion ausgeführt wird, wenn ein Formular übergeben wird! Im Folgenden ist der HTML-Code für die JavaScript-Funktion und die Form

<form id=orders name="orders" action="orders_action.php" method="post" enctype="multipart/form-data" onsubmit="return test()"> 
    function test(){ 
     var element = document.getElementById("time").value; 
     var d = new Date(); 
     var m = d.getMinutes(); 
     var h = d.getHours(); 
     if(h == '0') {h = 24} 

     var currentTime = h+"."+m; 
     console.log(currentTime); 

     // get input time 
     var time = element.split(":"); 
     var hour = time[0]; 
     if(hour == '00') {hour = 24} 
     var min = time[1]; 

     var inputTime = hour+"."+min; 
     console.log(inputTime); 

     var totalTime = currentTime - inputTime; 
     console.log(totalTime); 

     if ((Math.abs(totalTime)) > 2) { 

     document.getElementById('time').style.background ='white'; 



     } 
     else { 
     document.getElementById('time').style.background ='#e35152'; 
     alert("Wrong time"); 

     } 
    } 

Anstelle der Alarm-Box in der die oben JS Funktion ich will „Unzeit Meldung“ anzuzeigen, in dem Dialogfeld i erstellt! Wie erreiche ich das?

Antwort

1

Statt alert function.Write folgenden Code (Pure Js):

modal.style.display = "block"; 
modal.querySelector('.modal-body').innerHTML="<p>Wrong time</p>"; 
+0

thanx alot es funktionierte :) –

Verwandte Themen