Javascript 调用php文件后,如何在当前页面中打开模式?

Javascript 调用php文件后,如何在当前页面中打开模式?,javascript,php,html,forms,Javascript,Php,Html,Forms,我的问题是, 我有一个HTML文件,其中包含一个联系人表单,如下所示: <form method="post" action="send-email.php" name="contactform"> <div class="row uniform"> <div class="6u 12u$(xsmall)"> <input type="text" name="user-name" id="demo-name

我的问题是,
我有一个HTML文件,其中包含一个联系人表单,如下所示:

<form method="post" action="send-email.php" name="contactform">
    <div class="row uniform">
        <div class="6u 12u$(xsmall)">
            <input type="text" name="user-name" id="demo-name" value="" placeholder="Name" />
        </div>
        <div class="6u$ 12u$(xsmall)">
            <input type="email" name="user-email" id="demo-email" value="" placeholder="Email" />
        </div>
        <div class="12u$">
            <textarea name="user-message" id="demo-message" placeholder="Enter your message" rows="6"></textarea>
        </div>
        <div class="12u$">
            <ul class="actions">
                <li>
                    <input type="submit" value="Send Message" class="special" />
                </li>
                <li>
                    <input type="reset" value="Reset" />
                </li>
            </ul>
        </div>
    </div>
</form>
我不想重定向到另一个html页面,我想在同一页面上显示一个模式。我该怎么做


谢谢。

用户ajax发送请求

在html中更改

<form id="nyform" name="contactform">   
    ...

    <li><input id="submitform" type="button" value="Send Message" class="special" /></li>

...
  • 添加模态

    <div class="modal fade" id="mymodal" tabindex="-1" role="dialog" aria-labelledby="smallModal" aria-hidden="true">
      <div class="modal-dialog modal-sm">
        <div class="modal-content">
            <div class="modal-header">
                <button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button>
                    <h4 class="modal-title" id="myModalLabel">Title here</h4>
           </div>
            <div class="modal-body">
                <p>Content here</p>
            </div>
            <div class="modal-footer">
                <button data-dismiss="modal" class="btn btn-default" type="button">Close</button>
                <button class="btn btn-primary" type="button" id="okay">OK</button>
            </div>
        </div>
      </div>
    </div>
    
    
    &时代;
    标题在这里
    满足于此

    接近 好啊
    添加javascript

    <script>
            function getInput()
            {
                 var inputs = {};
                 inputs['user-name'] = $("#demo-name").val();
                 ...
                 return inputs;
            }
    
            jQuery(document).ready( function() {
                $('#submitform').click(function(){
                    //get input
                    var inputs = getInput();
                    $.ajax({
                       type:'GET',
                       url: "send-email.php",
                       data: inputs,
                       async: false,
                       success:function(result){
                           $('#mymodal').modal('show');
                       }
                    });
                })
    
            });
    
        </script>
    
    
    函数getInput()
    {
    变量输入={};
    输入['user-name']=$(“#演示名称”).val();
    ...
    返回输入;
    }
    jQuery(文档).ready(函数(){
    $(“#提交表单”)。单击(函数(){
    //获取输入
    var inputs=getInput();
    $.ajax({
    类型:'GET',
    url:“发送email.php”,
    数据:投入,
    async:false,
    成功:功能(结果){
    $('mymodal').modal('show');
    }
    });
    })
    });
    
    我想你不明白我的问题是什么。或者你的回答没有解决问题。我在我的网站上应用了你的答案,我得到了同样的结果。当我点击按钮时,它会转到“send email.php”,因为里面什么都没有,所以我看到一个空白页面。我想要的是我想要点击按钮,我想要php工作,并且在我点击按钮的同一页面上显示一个模式。好的,你能打印你在send-email.php中得到的所有输入吗?在你的站点中应用我的代码后,我设法做了正确的事情,但是我得到了一个错误。错误为:HTTP错误405.0-不允许使用方法,无法显示您正在查找的页面,因为正在使用无效的方法(HTTP谓词)。点击后,我发现我的问题是“原因2”。你现在能帮我吗?好的,我明白了,你把方法从POST改为GET。我将在帖子中进行编辑,当您想在send-email.php页面中获取值时,请使用$_get['user-name',],我希望这是一个帮助。好的,我会尝试一下,然后回复您。有一个小问题,为什么要为表单标记定义一个名为“nyform”的id?
    <script>
            function getInput()
            {
                 var inputs = {};
                 inputs['user-name'] = $("#demo-name").val();
                 ...
                 return inputs;
            }
    
            jQuery(document).ready( function() {
                $('#submitform').click(function(){
                    //get input
                    var inputs = getInput();
                    $.ajax({
                       type:'GET',
                       url: "send-email.php",
                       data: inputs,
                       async: false,
                       success:function(result){
                           $('#mymodal').modal('show');
                       }
                    });
                })
    
            });
    
        </script>