2016-01-24 78 views
1

我試圖使用basicModal在單擊我的錨標記以提交表單後創建模式彈出框。我原本有一個按鈕標籤,但在我看來,basicModal只適用於錨標籤,所以我切換到。問題是,當我通過點擊按鈕提交表單時,頁面刷新時不會彈出模式。話雖如此,我希望能夠使用錨標記提交表單,而不是刷新頁面,以便模式可以彈出。使用錨標籤提交表單而不刷新頁面

我試着這樣做: <a class="alert button large" href="javascript:$('form').submit();" onclick="return false;">Submit!</a>

提交表單,但什麼都不做的onclick與return false但不工作。

的代碼看起來是這樣的:

<form method="POST" action="" class="form"> 
     <div class="small-6 small-centered columns"> 
      <select name="city"> 
      <option value="" disabled selected>Select a City</option> 
      <option value="nyc">NYC</option> 
      <option value="philly">Phladelphia</option> 
      <option value="rot">Rotchester</option> 
      <option value="sf">San Francisco</option> 
      <option value="boston">Boston</option> 
      <option value="la">Los Angeles</option> 
      </select> 
      <br/><br/> 
      <select name="category"> 
      <option value="" disabled selected>Select a Category</option> 
      <option value="cs">Computer Science</option> 
      <option value="math">Mathematics</option> 
      <option value="bio">Biology</option> 
      <option value="chem">Chemistry</option> 
      <option value="physics">Physics</option> 
      <option value="art">Art</option> 
      <option value="lang">Linguistics</option> 
      <option value="astro">Astrology</option> 
      </select> 
      <br/><br/> 
       <input type="text" class="span2" name="get-date" value="Select a Date" id="dp1"> 
      <br/><br/> 
      <div class="btnn"> 
       <a class="alert button large" href="javascript:$('form').submit();" onclick="return false;">Submit!</a> 
      </div> 
      </div> 
     </div> 
    </form> 

回答

1

請看下面的例子:

<a class="alert button large" href="javascript:void(0)" onclick="submitForm();">Submit!</a> 

function submitForm(){ 
    $.ajax({ 
     type: 'POST', 
     url: '<url>', // change to your url 
     data: $('.form').serialize(), 
     success: function(response){ 
      basicModal.show({ // just for example 
       body: '<p>This is a dead-simple alert modal!<br>The message can be filled with anything you want.</p>', 
       buttons: { 
        action: { 
         title: 'Dismiss', 
         fn: basicModal.close 
        } 
       } 
      }); 
     } 
    }); 
} 
1

如果我理解正確的,你想提交表單到服務器,然後顯示響應與模式彈出,無刷新頁面。然後,你需要Ajax請求:

var submitForm = function() 
{ 
    $.ajax({ 
     type: 'post', 
     url: '', 
     data: $('form').serialize(), 
     success: function(response){ 
      //open your modal here 
     } 
    }) 
} 

和按鈕:

<a class="alert button large" href="javascript:submitForm()">Submit!</a>