Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/435.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
Javascript JQUERY+;PHP POST不发送值_Javascript_Php_Jquery - Fatal编程技术网

Javascript JQUERY+;PHP POST不发送值

Javascript JQUERY+;PHP POST不发送值,javascript,php,jquery,Javascript,Php,Jquery,我有一个带有四个按钮和action='updateEstado.php'的表单。此外,我还有一些jQuery代码,当我单击按钮时会启动 <!-- CHANGE STATUS MODAL MENU --> <div class="modal fade" id="change" tabindex="-1" role="dialog" aria-labelledby="change" aria-hidden="true"> <div class="modal-d

我有一个带有四个
按钮和
action='updateEstado.php'
的表单。此外,我还有一些jQuery代码,当我单击按钮时会启动

<!-- CHANGE STATUS MODAL MENU -->

<div class="modal fade" id="change" tabindex="-1" role="dialog" aria-labelledby="change" aria-hidden="true">
    <div class="modal-dialog">
        <div class="modal-content">

            <div class="modal-header">
                <button type="button" class="close" data-dismiss="modal" aria-hidden="true"><span class="glyphicon glyphicon-remove" aria-hidden="true"></span></button>
                <h4 class="modal-title custom_align" id="Heading">CANVIAR ESTAT</h3>    
            </div>

            <form action="updateEstado.php" method="post">  
                <div class="modal-body">
                    <div class=" text-center">

                                <div class="container-fluid">   
                                    <div class="row">
                                        <div class="col-md-12 text-center">
                                            <input type="submit" id="cambiarestado" class="btn btn-modal-estado" style="background-color:YellowGreen; color:white;" value="ACTIVAT">
                                        </div>
                                    </div>

                                    <div class="row">
                                        <div class="col-md-12 text-center">
                                            <input type="submit" id="cambiarestado" class="btn btn-modal-estado" style="background-color:Tomato; color:white;" value="PENDENT MIQUEL ALIMENTACIÓ">          
                                        </div>
                                    </div>

                                    <div class="row ">
                                        <div class="col-md-12 text center">
                                            <input type="submit"  id="cambiarestado" class="btn btn-modal-estado" style="background-color:SkyBlue; color:white;" value="PENDENT ADDCOM">
                                        </div>  
                                    </div>

                                    <div class="row">
                                        <div class="col-md-12 text center">
                                            <input type="submit" id="cambiarestado" class="btn btn-modal-estado" style="background-color:Gray; color:white;" value="DESACTIVAT">
                                        </div>
                                    </div>

                                    <div class="row">
                                        <h5 id='codigosSeleccionados'></h5>
                                    </div>
                                </div>    

                        </div>   
                    </div>
                </form>
            </div>
        </div>
    </div> 
</div>


<script>
    $('#cambiarestado').click(function(){
        event.preventDefault();                     
        // Get the value of the input fields
        var inputvalue = $(this).attr("value");

        // Send Ajax request to updateEstado.php, with value set as 'input' in the POST data
        $.post("updateEstado.php", {estado: "DESACTIVAT", codigo: "38"});

        alert(inputvalue);          
    });
</script>

堪萨斯州
$('cambiarestado')。单击(函数(){
event.preventDefault();
//获取输入字段的值
var inputvalue=$(this.attr(“值”);
//将Ajax请求发送到updateEstado.php,并在POST数据中将值设置为“input”
$.post(“updateEstado.php”,{estado:“DESACTIVAT”,codigo:“38”});
警报(输入值);
});
我用这一新行更新了jquery代码:
event.preventDefault()

现在,当我启动updateEstado.php时,控制台显示以下消息:

如果我删除这一行:
$.post(“updateEstado2.php”,{estado:“DESACTIVAT”,codigo:“38”})


显示消息消失。很明显,这就是问题所在。解决方案是什么?我不…

如果表单未被阻止,提交按钮将提交表单。您可以使用
preventDefault()
阻止它

例如:

$('#cambiarestado').click(function(event){
    event.preventDefault();
    ...rest of your code ...

如果表单未被阻止,“提交”按钮将提交表单。您可以使用
preventDefault()
阻止它

例如:

$('#cambiarestado').click(function(event){
    event.preventDefault();
    ...rest of your code ...

如果按钮类型为submit,当您单击按钮时,按钮表单将提交到
updateEstado.php
,而不包含
$.post
的值。您可以使用JQuery提交表单并发送数据:

<form id="form" >
    <div class="row">
        <div class="col-md-12 text center">
            <input type="submit" id="cambiarestado" class="btn btn-modal-estado" style="background-color:Gray; color:white;" value="DESACTIVAT">
        </div>
    </div>
</form> 
或者,如果要获取按钮的值:

<form id="form" >
    <div class="row">
        <div class="col-md-12 text center">
            <input type="button" id="cambiarestado" class="btn btn-modal-estado" style="background-color:Gray; color:white;" value="DESACTIVAT">
        </div>
    </div>
</form> 

如果按钮类型为submit,当您单击按钮时,按钮表单将提交到
updateEstado.php
,而不包含
$.post
的值。您可以使用JQuery提交表单并发送数据:

<form id="form" >
    <div class="row">
        <div class="col-md-12 text center">
            <input type="submit" id="cambiarestado" class="btn btn-modal-estado" style="background-color:Gray; color:white;" value="DESACTIVAT">
        </div>
    </div>
</form> 
或者,如果要获取按钮的值:

<form id="form" >
    <div class="row">
        <div class="col-md-12 text center">
            <input type="button" id="cambiarestado" class="btn btn-modal-estado" style="background-color:Gray; color:white;" value="DESACTIVAT">
        </div>
    </div>
</form> 

如果您真的想通过JavaScript提交表单,而不是标准的HTML表单提交,您必须做以下几件事:

  • 在表单中添加onsubmit函数
  • 使用event.preventDefault()取消正常表单提交
  • 从表单中获取值
  • 通过jQuery进行手动表单提交
  • 但我认为你想做一些更琐碎的事情: 提交两个值,无论用户单击哪个选项

    归档的最简单方法是使用隐藏输入:

    <input type="hidden" name="estado" value="DESACTIVAT">
    <input type="hidden" name="codigo" value="38">
    

    如果你真的想通过JavaScript提交表单,而不是标准的HTML表单提交,你必须做几件事:

  • 在表单中添加onsubmit函数
  • 使用event.preventDefault()取消正常表单提交
  • 从表单中获取值
  • 通过jQuery进行手动表单提交
  • 但我认为你想做一些更琐碎的事情: 提交两个值,无论用户单击哪个选项

    归档的最简单方法是使用隐藏输入:

    <input type="hidden" name="estado" value="DESACTIVAT">
    <input type="hidden" name="codigo" value="38">
    
    
    

    您必须使用唯一的
    id
    名称。改为使用
    class
    作为触发器。提交按钮按原样提交表单。您的jQuery代码永远不会执行。您需要向表单本身添加onsubmit函数:此外,id必须是唯一的。是的,执行代码是因为我可以在jquery中显示警报消息。您必须使用唯一的
    id
    名称。改为使用
    class
    作为触发器。提交按钮按原样提交表单。您的jQuery代码永远不会执行。您需要向表单本身添加onsubmit函数:另外,ID必须是唯一的。是的,执行代码是因为我可以将警报消息显示到jquery中。我想通过javascript提交表单,因为我有一个数组要发送到php表单。然后可能检查:我想通过javascript提交表单,因为我有一个数组要发送到php表单。然后可能检查:对于测试,我更改代码:在action='updateEstado.php'中,但在jquery代码updateEstado2.php中,使用jquery函数#form with$.post(“updateEstado2.php”)启动updateEstado.php:(您将
    form
    的id设置为form?
    用于测试我更改代码:在action='updateEstado.php'中,但在jquery代码updateEstado2.php中,它使用jquery函数#form with$.post(“updateEstado2.php”)启动updateEstado.php:(您将
    form
    的id设置为form?
    当我放置event.preventDefault()时,它不起作用;当我单击按钮时,jquery代码不运行。问题是相反的,当我单击按钮时,jquery将运行,表单输入操作不运行。您确定您没有出现JS错误吗?这个答案应该会起作用(请确保将事件参数添加到单击回调中)。当我放置event.preventDefault()时,它不起作用;当我单击按钮时,jquery代码不运行。问题是inv