2015-11-25 13 views
6

Robię trochę blogu, że używanie modalna (S) z Materializecss, ale mam problem z moim modalne onclick na zewnątrz i na fałszywych danych, tutaj mój kodDisable Close Modal się na zewnątrz Click

głównym. js

function changepassword(){ 
var user = $('#userlog').val(); 
var content = ""; 

content += '<div id="modganpas" class="modal modal-fixed-footer">'; 
content += '<div class="modal-content">'; 
content += '<form>';   
content += '<style="text-align:center;font-size:12px;font-weight:bold;"><h3>change Password</h3>'; 
content += '<div><i class="material-icons">supervisor_account</i>';    
content += '</div>'; 
content += '<div class="row">'; 
content += '<div class="input-field col s12">'; 
content += '<input id="changeUsername" name="changeUsername" type="text" class="validate" disabled>'; 
content += '</div>'; 
content += '<div class="input-field col s12">'; 
content += '<input id="changePasswordold" maxlength="32" name="changePasswordold" type="password" class="validate">'; 
content += '<label for="changePasswordold">Password old</label></div>'; 
content += '<div class="input-field col s6">'; 
content += '<input id="changePasswordnew" maxlength="32" name="changePasswordnew" type="password" class="validate">'; 
content += '<label for="changePasswordnew">Password new</label></div>'; 
content += '<div class="input-field col s6">'; 
content += '<input id="changePasswordnew1" maxlength="32" name="changePasswordnew1" type="password" class="validate">'; 
content += '<label for="changePasswordnew1">Ulangi Password</label></div>'; 
content += '</div>'; 
content += '</form>'; 
content += '</div>'; 
content += '<div class="modal-footer">'; 
content += '<a href="#" onClick="check_ganpass()" id="btn_ok" class="modal-action modal-close waves-effect waves-green btn-flat ">Edit</a>'; 
content += '<a href="#!" onClick="cancelchangePassword()" class="modal-action modal-close waves-effect waves-red btn-flat ">Cancel</a>'; 
content += '</div>'; 
content += '</div>'; 
content += '</div>'; 

     $("#formodal").append(content); 
     $('#changeUsername').val(user);} 


//for check 


    function check_ganpass(){ 
    var username = $('#changeUsername').val(); 
    var passwordold = $('#changePasswordold').val(); 
    var passwordnew = $('#changePasswordnew').val(); 
    var passwordnew1 = $('#changePasswordnew1').val(); 
    var urlnyah = 'pas.php'; 

    $.ajax({ 
     url  : urlnyah, 


     data : 'username='+username+'&passwordold='+passwordold+'&passwordnew='+passwordnew+'&passwordnew1='+passwordnew1, 
     type : 'POST', 
     dataType: 'html', 
     success : function(pesan){ 
      if(pesan=='ok,'){ 
       Materialize.toast('Data Telah Berubah',4000); 
      } 
      else{ 
       Materialize.toast(pesan,4000); 
      } 
     } 
    });} 

pas.php

<?php include("connection.php"); 
session_start(); 
$username = $_POST['username']; 
$passwordold = md5($_POST['passwordold']); 
$passwordnew = md5($_POST['passwordnew']); 
$passwordnew1 = md5($_POST['passwordnew1']); 
    $query = mysql_query("select * from tuser where username ='$username' and password = '$passwordold'"); 
    $data = mysql_num_rows($query); 
    if ($data ==1) 
    { if ($passwordnew == $passwordnew1){  mysql_query("UPDATE tuser SET password='$passwordnew1' WHERE username='$username'"); 
      echo "ok,"; 
     } else { 
     echo "Password new not same"; 
     }}else{ 
     echo "Password old werong.";}?> 

connection.php

<?php $sambung=mysql_connect('localhost','root', '')or die('Not connected : ' . mysql_error()); 
mysql_select_db("test", $sambung)or die('Not connected : ' . mysql_error());?> 

pytanie brzmi, jak wyłączyć bliskie modal po kliknięciu na zewnątrz i jeśli dane błędne lub błędów.

dzięki, dla korekty.

+0

można również napisać niestandardowy kod, aby ukryć modal. –

+0

Dyskusja jest tania pokaż mi kod, a proszę użyj materialize. – Sae

Odpowiedz

5

// dla wyłączyć gdy modalnym kliknij poza

$('#modalid').openModal({dismissible:false}); 

// usunąć modal-modal-close działania w przycisk OK

<a href="#" onClick="check_ganpass()" id="btn_ok" class="waves-effect waves-green btn-flat ">Edit</a> 

// wstawić miech "Materialize.toast ('dane Telacha Berubah', 4000);"

$('modalid').closeModal(); 

Mam nadzieję, że odpowiedź na twoje pytanie. :)

+0

dzięki. że rzeczy, których potrzebuję. – Sae

0

Spróbuj

$('#ModalID').modal({ 
    backdrop: 'static', 
    keyboard: false 
}) 

lub w html zbiór danych atrybutów jak poniżej

data-backdrop="static" data-keyboard="false" 

na wywołanie podręcznego

Hope this helps ..