Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/413.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用ajax和javascript显示和隐藏表单_Javascript_Php_Html_Ajax - Fatal编程技术网

使用ajax和javascript显示和隐藏表单

使用ajax和javascript显示和隐藏表单,javascript,php,html,ajax,Javascript,Php,Html,Ajax,我试图通过ajax在数据库中插入值。当从数据库循环时,有行进入。我在每一行中添加了一列,其中包含按钮。点击按钮,我正在提交数据库中的值,工作正常。删除查询也可以正常工作 我想在成功提交时隐藏选择表单并显示取消表单 当插入查询失败时,希望显示错误 然后单击取消按钮,在删除查询成功时显示选择表单 我需要帮助。提前谢谢 PHP代码: While循环代码: if($num_rowsslctcncl) { $slctcncldis="<form name='cancel_selection'

我试图通过ajax在数据库中插入值。当从数据库循环时,有行进入。我在每一行中添加了一列,其中包含按钮。点击按钮,我正在提交数据库中的值,工作正常。删除查询也可以正常工作

我想在成功提交时隐藏选择表单并显示取消表单

当插入查询失败时,希望显示错误

然后单击取消按钮,在删除查询成功时显示选择表单

我需要帮助。提前谢谢

PHP代码:

While循环代码:

if($num_rowsslctcncl)
{
    $slctcncldis="<form name='cancel_selection' class='cancel_selection' action=''>
    <input type='hidden' name='crs' class='user_id' value='$coursename'>
    <input type='hidden' name='insertid' class='insertid' value='$insertid'>

    <button class='btn btn-cancel btn-xs' value='Cancel'>Cancel</button>
    </form>";
}

if(!$num_rowsslctcncl)
{
    $slctcncldis="<form name='form_submit_change_status' class='form_submit_change_status' action=''>
    <input type='hidden' name='crs' class='user_id' value='$coursename'>
    <input type='hidden' name='insertid' class='insertid' value='$insertid'>

    <button class='btn btn-warning btn-xs' value='Select Course'>Select Course</button>
    </form>";
}

echo"<tbody><tr>
<td>$crs</td>
<td>$slctcncldis </td>    
if($num_rowsslctncl)
{
$slctcncldis=”
取消
";
}
如果(!$num_rowsslctncl)
{
$slctcncldis=”
选课
";
}
回声“
$crs
$slctcncldis
Ajax和javascript代码:

插入功能代码:

<script>
$(function(){
    $('.btn.btn-warning').click(function(e) {
        e.preventDefault();
        var $form = $(this).closest(".form_submit_change_status");
        var formData =  $form.serializeArray();
        var userId =  $form.find(".user_id").val();
        var URL = "response.php";

        $.post(URL, formData).done(function(data) {
        });

        fail(function(jqXHR, textStatus, errorThrown) {
           alert(errorThrown);  
        });
    });
});
</script>

$(函数(){
$('.btn.btn警告')。单击(函数(e){
e、 预防默认值();
var$form=$(this).closest(“.form\u submit\u change\u status”);
var formData=$form.serializeArray();
var userId=$form.find(“.user_id”).val();
var URL=“response.php”;
$.post(URL,formData).done(函数(数据){
});
失败(函数(jqXHR、textStatus、ERRORSHORN){
警报(错误抛出);
});
});
});
删除功能代码:

<script>
$(function(){
    $('.btn.btn-cancel').click(function(e) {
        e.preventDefault();
        var $form = $(this).closest(".cancel_selection");
        var formData =  $form.serializeArray();
        var userId =  $form.find(".user_id").val();

        var URL = "cancelselection.php";
        $.post(URL, formData)
        .done(function(data) {
        });

        fail(function(jqXHR, textStatus, errorThrown) {
        });
    });
});
</script>

$(函数(){
$('.btn.btn取消')。单击(函数(e){
e、 预防默认值();
var$form=$(this).closest(“.cancel_selection”);
var formData=$form.serializeArray();
var userId=$form.find(“.user_id”).val();
var URL=“cancelselection.php”;
$.post(URL、formData)
.完成(功能(数据){
});
失败(函数(jqXHR、textStatus、ERRORSHORN){
});
});
});
Response.php

插入查询代码:

<?php
include_once("db.php");

    $crs = $_POST["crs"];
    $sid = $_POST["insertid"]; 

    $strscheck="SELECT * FROM add_delete_record where sid='$sid'";
    $resultscheck=mysql_query($strscheck) or die(mysql_error());

    $num_rowscheck = mysql_num_rows($resultscheck);

    if($num_rowscheck < 3)
    {
        $strsreg="insert into add_delete_record  (sno, chcourse, sid) values('', '$crs','$sid')";
        $resultsreg=mysql_query($strsreg) or die(mysql_error());
    }
    else
    {
    }
?>

您需要在循环中打印两个表单。不要插入所选表单,而是先显示和隐藏表单。尝试类似的操作。将其与代码进行比较,您会发现差异

if($num_rowsslctcncl)
{
    $slctcncldis_Cancel ="<form name='cancel_selection' class='cancel_selection' style="display:block;" action=''>
            <input type='hidden' name='crs' class='user_id' value='$coursename'>
            <input type='hidden' name='insertid' class='insertid' value='$insertid'>
            <button class='btn btn-cancel btn-xs' value='Cancel'>Cancel</button>
        </form>";

} else {
    $slctcncldis_Cancel ="<form name='cancel_selection' class='cancel_selection' style="display:none;" action=''>
            <input type='hidden' name='crs' class='user_id' value='$coursename'>
            <input type='hidden' name='insertid' class='insertid' value='$insertid'>
            <button class='btn btn-cancel btn-xs' value='Cancel'>Cancel</button>
        </form>";
}

if(!$num_rowsslctcncl)
{

    $slctcncldis_Submit ="<form name='form_submit_change_status' class='form_submit_change_status' style="display:block;" action=''>
            <input type='hidden' name='crs' class='user_id' value='$coursename'>
            <input type='hidden' name='insertid' class='insertid' value='$insertid'>
            <button class='btn btn-warning btn-xs' value='Select Course'>Select Course</button>
            </form>";

} else {
    $slctcncldis_Submit ="<form name='form_submit_change_status' class='form_submit_change_status' style="display:none;" action=''>
            <input type='hidden' name='crs' class='user_id' value='$coursename'>
            <input type='hidden' name='insertid' class='insertid' value='$insertid'>
            <button class='btn btn-warning btn-xs' value='Select Course'>Select Course</button>
            </form>";

}

echo"<tbody><tr>
<td>$crs</td>
<td>$slctcncldis_Cancel.$slctcncldis_Submit</td>    


    Ajax and javascript Code :

Insert Function Code :

    <script>
$(function(){
    $('.btn.btn-warning').click(function(e) {
        e.preventDefault();
        var $form = $(this).closest(".form_submit_change_status");

    var $cancel_form = $form.siblings(".cancel_selection");

        var formData =  $form.serializeArray();
        var userId =  $form.find(".user_id").val();


        var URL = "response.php";
        $.post(URL, formData).done(function(data) {
        $form.hide();
        $cancel_form.show();
        });

        fail(function(jqXHR, textStatus, errorThrown) {
           alert(errorThrown);  
        });


    });
});

</script>
if($num_rowsslctncl)
{
$slctcncldis\u取消=”
取消
";
}否则{
$slctcncldis\u取消=”
取消
";
}
如果(!$num_rowsslctncl)
{
$slctcncldis_提交=”
选课
";
}否则{
$slctcncldis_提交=”
选课
";
}
回声“
$crs
$slctcncldis_取消。$slctcncldis_提交
Ajax和javascript代码:
插入功能代码:
$(函数(){
$('.btn.btn警告')。单击(函数(e){
e、 预防默认值();
var$form=$(this).closest(“.form\u submit\u change\u status”);
var$cancel_form=$form.sibbines(“.cancel_selection”);
var formData=$form.serializeArray();
var userId=$form.find(“.user_id”).val();
var URL=“response.php”;
$.post(URL,formData).done(函数(数据){
$form.hide();
$cancel_form.show();
});
失败(函数(jqXHR、textStatus、ERRORSHORN){
警报(错误抛出);
});
});
});

我的问题没有得到任何答案。我问错问题了吗?问题是没有人想读这么多代码。尽量发布相关代码,并保持简短和简单,以解释您的问题是什么。但当我给出简短代码时,每个人都要求完整的代码。。你能帮我一下吗。这么多人都坚持这一点hours@Test在下面添加了答案。这有帮助吗?Kuldeep它在某种程度上有帮助。但最初它显示了这两种形式。我不想这样做,因为它允许再次选择所选项目。我们可以通过response.php完成吗?如果插入查询成功,则隐藏选择表单并显示取消表单。不应同时显示两种表单,请在我的答案中为这两种表单选中style=“display:none;”和style=“display:block;”。你应该在打印表格之前应用这些样式。是的,现在很好。非常感谢你。如果($num_rowscheck>3),则需要从response.php再做一件事。我想显示一些msgone问题,如果插入查询未成功,则仍将按钮从选择更改为取消。您需要修改“$.post(URL,formData).done(函数(数据){}”函数。读取来自服务器的“数据”,如果它包含错误,则不显示/隐藏表单。如果“数据”包含成功消息,则显示/隐藏表单