在過去我也碰到過這種問題,希望對佈局/演示原因形式之外的提交按鈕。經過一番思考和閱讀,我瞭解到有一些很好的理由可以避免這樣做;
更改瀏覽器的默認行爲通常是一個壞主意,你做額外的工作,爲自己和最終很可能使事情變得複雜,往往也會導致混亂的用戶。 (例如:如果用戶點擊輸入,會發生什麼情況,它仍然會提交表單嗎?)
沒有最新的javascript或沒有打開它的用戶將無法使用您的表單/現場。
你可以實現你想要的,並仍然使用標準的html提交按鈕。使用CSS使它看起來像文本鏈接,這是一個很好的例子;
How to make a submit button display as a link?
在您的例子我個人只是有提交按鈕顯示爲一個按鈕(風格相匹配的網站設計)直屬複選框,從下面的菜單分開。因爲這對我來說最有意義,並且會爲您節省一些工作,因爲您不需要擺弄菜單功能。
但是,如果您希望完全按照您的設置實現,您可以將按鈕(html字符串)作爲參數傳遞給您的函數,以便它可以輸入到菜單列表中,然後返回所有菜單html字符串和在你的表格中打印;
<form>
<input type="checkbox" name="1" /><br />
<input type="checkbox" name="2" /><br />
<input type="checkbox" name="3" /><br />
<?php
$buttonHtml = '<input type="submit" name="delete_bm" value="delete bm" class="submitLink" />';
echo navMenu($buttonHtml);
?>
</form>
現在提交標籤是表單標籤內(並且將表現爲如預期),它是簡單地使用CSS樣式,這些和任何其他元素,給你你想要的演示文稿的情況下(可能需要從表單元素中刪除填充,餘量等)。
.submitLink {
font: inherit;
background-color: transparent;
text-decoration: underline;
border: none;
color: blue;
cursor: pointer;
}
.submitLink:focus {
outline: none;
}
form{
padding: 0;
margin: 0;
}
最大的好處是,現在你不需要任何不必要的JavaScript,從而提供最大的可訪問性和維護用戶期望的功能。 對我來說也不那麼複雜,並且不太可能需要更新。請注意:如果您的表單允許用戶一次刪除多個書籤(看起來應該是這樣),您可能希望按鈕上的文本可以閱讀;刪除書籤希望你曾考慮過;)
謝謝@Vipin辛格,但我會在哪裏輸入