2017-08-24 24 views
1

我有以下代碼:jQuery的包裹與形式的div沒有提交

HTML:

<button id="my_button">Test</button> 

的Javascript(jQuery的):

$(document).ready(function() { 
    $('#my_button').click(function() { 
    $(this).wrap('<form>') 
    }) 
}) 

當有按鈕點擊它用我希望的形式包裝它,但也提交表格。

我只想用形式來包裝沒有提交它

回答

3

無論是添加調用preventDefault

$(document).ready(function() { 
    $('#my_button').click(function(e) { 
    // Accept the arg -------------^ 
     e.preventDefault();  // Prevent the default action 
     $(this).wrap('<form>') 
    }); 
}); 

...或更改按鈕的類型button

<button type="button" id="my_button">Test</button> 

...因爲默認typebuttonsubmit

+0

謝謝,對於的情況,我應該使用preventDefault()? –

+0

@OmerNizri:是的,他們也提交表格。 –

1

您需要設置type屬性與價值button將其轉換成一個簡單的按鈕,否則充當submit按鈕。

<button type="button" id="my_button">Test</button> 
+0

這是否確實解決了問題,還是應該這樣評論? –

+2

@TimothyGroote:是的,這解決了這個問題。 'button'的默認'type'是'submit'。通過將其更改爲'button',它不再提交表單。 –