在外部点击时禁用关闭模式
Disable Close Modal on Outside Click
我正在制作一些使用 Materializecss 模态的博客,但是我的模态 onclick 在外部和虚假数据上有问题,这是我的代码:
main.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());?>
问题是如何禁止在框外单击时关闭模式,以及如果输入的数据有误。
感谢指正。
试试这个
$('#ModalID').modal({
backdrop: 'static',
keyboard: false
})
或在html中设置数据属性如下
data-backdrop="static" data-keyboard="false"
弹出调用
希望这对您有所帮助..
// 在外部单击时禁用模式
$('#modalid').openModal({dismissible:false});
// 删除确定按钮中的模态动作模态关闭
<a href="#" onClick="check_ganpass()" id="btn_ok" class="waves-effect waves-green btn-flat ">Edit</a>
// 在下方插入 "Materialize.toast('Data Telah Berubah',4000);"
$('modalid').closeModal();
希望能回答您的问题。 :)
如果你只有一个模式,并且正在使用 jquery,你可以这样做:
$('#myModal').modal()[0].M_Modal.options.dismissible = false;
$('#myModal').modal('open');
干杯
您可以使用 dismissible 选项来防止这种情况
$('#your_modal_ID').modal({
dismissible: false
})
我正在制作一些使用 Materializecss 模态的博客,但是我的模态 onclick 在外部和虚假数据上有问题,这是我的代码:
main.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());?>
问题是如何禁止在框外单击时关闭模式,以及如果输入的数据有误。
感谢指正。
试试这个
$('#ModalID').modal({
backdrop: 'static',
keyboard: false
})
或在html中设置数据属性如下
data-backdrop="static" data-keyboard="false"
弹出调用
希望这对您有所帮助..
// 在外部单击时禁用模式
$('#modalid').openModal({dismissible:false});
// 删除确定按钮中的模态动作模态关闭
<a href="#" onClick="check_ganpass()" id="btn_ok" class="waves-effect waves-green btn-flat ">Edit</a>
// 在下方插入 "Materialize.toast('Data Telah Berubah',4000);"
$('modalid').closeModal();
希望能回答您的问题。 :)
如果你只有一个模式,并且正在使用 jquery,你可以这样做:
$('#myModal').modal()[0].M_Modal.options.dismissible = false;
$('#myModal').modal('open');
干杯
您可以使用 dismissible 选项来防止这种情况
$('#your_modal_ID').modal({
dismissible: false
})