【问题标题】:Dont understand where and how to put javascript block change page不明白在哪里以及如何放置 javascript 块更改页面
【发布时间】:2013-02-10 13:44:04
【问题描述】:

我有这个通知页面(去注册页面之前的页面) 此页面检查数据库中的数据,如果 false / true 将在文本框下显示消息,但它仅显示该消息不阻止进程输入。 这是我的通知页面(如果来自 check.php 没有冲突,则显示真实消息):

<head>
<script src="js/jquery.js" type="text/javascript"></script>
<script src="js/settings.js" type="text/javascript"></script>
<SCRIPT type="text/javascript">
pic1 = new Image(16, 16); 
pic1.src = "img/loader.gif";
//untuk nim
$(document).ready(function(){
$("#cekintern").change(function() { 
var nomor = $("#cekintern").val();
if(nomor.length >= 8)
{
$("#status2").html('<img src="img/loader.gif" align="absmiddle">&nbsp;Checking availability...');
    $.ajax({  
    type: "POST",  
    url: "check.php",  
    data: "cekintern="+ nomor,  
    success: function(msg){  
   $("#status2").ajaxComplete(function(event, request, settings){ 
    if(msg == 'OK')
    { 
        $("#cekintern").removeClass('object_error'); // if necessary
        $("#cekintern").addClass("object_ok");
        $(this).html('&nbsp;<img src="img/accepted.png" align="absmiddle"> <font color="Green"> Available </font>  ');
    }  
    else  
    {  
        $("#cekintern").removeClass('object_ok'); // if necessary
        $("#cekintern").addClass("object_error");
        $(this).html(msg);
    }    
   });
 } 
  }); 
}
else
    {
    $("#status2").html('&nbsp;<img src="img/decline.jpg" align="absmiddle">  <font color="red">Maaf NIM anda salah.</font>');
    $("#cekintern").removeClass('object_ok'); // if necessary
    $("#cekintern").addClass("object_error");
    alert('Maaf NIM salah!!'); window.location.href='?get=2';
    }
});
});
//-->
</SCRIPT>
</head>
<body><br />
<form name="form1" method="post" action="register.php">
<center>
<em>Input <strong>NIM</strong></em><br />
    <input name="cekintern" type="text" id="cekintern" size="15" maxlength="9" placeholder="Input NIM Here"/><div id="status2"></div><br />
    <input type="submit" value="Confirm" />
    <input type="button" name="button" id="button" value="Cancel" onClick="window.location='index.php'"/></center>
</form>

这个 check.php 从数据库中检查并在有冲突时显示消息错误:

<?php if(isSet($_POST['cekintern']))
{
$nimintern = $_POST['cekintern'];
$sql_check = mysql_query("SELECT * FROM {$prefix}intern WHERE nim='$nimintern'");
if(mysql_num_rows($sql_check))
{
$nimintern = $_POST['cekintern'];
$sql_check2 = mysql_query("SELECT * FROM {$prefix}pengguna WHERE nim_pengguna='$nimintern'");
if(mysql_num_rows($sql_check2))
{
echo '&nbsp;<img src="img/decline.jpg" align="absmiddle"> <font color="red">Maaf NIM <STRONG>'.$nim.'</STRONG> nim anda sudah terdaftar.</font>';
return false;
}
else
{
echo 'OK';  
}}
else
{
echo '&nbsp;<img src="img/decline.jpg" align="absmiddle"> <font color="red">Maaf NIM <STRONG>'.$nim.'</STRONG> tidak ada dalam daftar mahasiswa.</font>';
return false;
}}
?>

所有消息都是有效的,但是如果消息有冲突,我应该写什么来使 notification.php (javascrit) 和 check.php (php) 取消输入。

【问题讨论】:

    标签: php javascript block


    【解决方案1】:

    您的成功 ajax 回调中有此代码,如果冲突,您可以只添加一条指令:

    $("#status2").ajaxComplete(function(event, request, settings){ 
    if(msg == 'OK')
    { 
        $("#cekintern").removeClass('object_error'); // if necessary
        $("#cekintern").addClass("object_ok");
        $(this).html('&nbsp;<img src="img/accepted.png" align="absmiddle"> <font color="Green"> Available </font>  ');
    }  
    else  
    {  
        $("#cekintern").removeClass('object_ok'); // if necessary
        $("#cekintern").addClass("object_error");
        $(this).html(msg);
        $("#cekintern").val("");/******/
    }
    

    【讨论】:

    • 所以我必须输入代码$("#cekintern").val(""); 但我很困惑,它是做什么的?它将允许下一页还是什么?你能告诉我val(""); 是做什么的吗?对不起,我真的不明白!
    猜你喜欢
    • 2017-05-01
    • 2011-02-13
    • 2011-08-01
    • 2020-07-10
    • 1970-01-01
    • 2014-06-24
    • 1970-01-01
    • 1970-01-01
    • 2019-07-23
    相关资源
    最近更新 更多