2013-05-20 48 views
2

我需要將一個按鈕添加到表單。我無法控制創建窗體本身的邏輯......但我可以在窗體周圍添加代碼,如果需要的話。使用jquery append()將一個按鈕添加到表單

該窗體的代碼如下所示:

<form action="/cgi-bin/a/logon" method="POST"> 
    <DT>Login ID</DT> 
     <DD> 
      <input class=" text" type="text" name="id" value=""> 
     </DD> 
    <DT>Password</DT> 
     <DD> 
      <input class=" password" type="password" name="password" value=""> 
     </DD> 
     <DT></DT> 
     <DD><input class="submit" type="submit" name="submit" value="Logon"> 
     </DD> 
</FORM> 

我知道我可以添加一個div圍繞整個形式和追加到...但我想新的按鈕,右邊出現的旁邊「登錄」按鈕。 我嘗試下面的代碼,但沒有奏效:

<script type="text/javascript"> 
     $(document).ready(function() { 
      $('.submit').append($('<input type="button" value="test">')); 
     }); 
</script> 

我假設你可能無法追加到一個按鈕...這就是爲什麼它沒有工作。

我還在學習jquery,所以如果除了追加我可以使用的另外一種方法,我全是耳朵!實際上,按鈕不一定是表單的一部分,因爲我將在點擊時運行客戶端代碼。但它必須出現在登錄按鈕旁邊。

謝謝。

+0

注意,'NAME = 「提交」'應該避免,它可以與表單的提交方法干擾,如果直接調用(如'form.submit()') –

回答

7

你不能追加什麼輸入元素..

使用.after.before

$('.submit').after($('<input type="button" value="test">')); 
+0

我試着那,但它不會創建任何按鈕。我在firefox中檢查F12 ...在控制檯下,我沒有看到任何錯誤。實際上,在腳本 – dot

+0

中都沒有關係。我發現了錯誤。失蹤 );有用! – dot

2

試試這個:jsFiddle

$('<input type="button" value="test">').insertAfter('.submit'); 
2

您可以使用.after這樣

$('.submit').after('<input type="button" value="test" />'); 

OR

$('form').append('<input type="button" value="test" />'); 
相關問題