2015-06-28 66 views
1

当我提交我的表单时,只有弹出框出现,没有任何查询结果。我有2个提交按钮,触发我的PHP脚本的查询。查询结果应显示在一个弹出框中。我想,我的jQuery代码应该是错的。这里是我的代码:带有2个按钮的Jquery.post提交表单

termM = $form.find("button[name='queryM']").val(), 
termG = $form.find("button[name='queryG']").val(), 
..... 
var posting = $.post(url, { queryM: termM, queryG: termG }); 

您不能分配两个不同的值,以一个单一的:

<div class="md-modal md-effect" id="modal"> 
<div class="md-content" id="content"> 
<h3>Query Results</h3> 
<div id="result"><?php include 'query/_query.php'; ?></div> 
<button class="md-close">Close</button> 
       </div>  
      </div> 
       <div class="column"> 
       <div align="center"> 
<form id="query" action="" > 
<button class="md-trigger md-setperspective" name="queryM" data-modal="modal" id="queryM">Query Person</button> 
<button class="md-trigger md-setperspective" name ="queryG" data-modal="modal" id="queryG">Query Order</button> 
</form><br> 
</div> 
<script> 
// formular query 
$("#query").submit(function(event) { 

    // prevent pagerefresh 
    event.preventDefault(); 

    // querym & queryg 
    var $form = $(this), 
    term = $form.find("button[name='queryM']").val(), 
    term = $form.find("button[name='queryG']").val(), 
    url = $form.attr("action"); 

    // post data 
    var posting = $.post(url, { queryM: term, queryG: term }); 

    // results in a div 
    posting.done(function(data) { 
    var content = $(data).find("#content"); 
    $("#result").empty().append(content); 
    }); 
}); 
</script> 
      </div> 
     </div> 

<script src="js/loader.js"></script> 
<script src="js/modal.js"></script> 

回答

1

一开始,分别在定义和使用更改term变量termMtermG都可变的,并期望回收它们。第一个值将被第二个值覆盖。

done回拨中,您可能需要执行console.log(data)以确认您获得了所需的回复。

+0

好的谢谢,它的工作原理。但我一次得到2个查询,我怎么能把它们分开? – Sparkm4n

+0

有两个疑问?你能说一点吗? – PeterKA

+0

好吧,我只想要一个查询,当我点击按钮,但我解决了通过创建第二个窗体 – Sparkm4n