酷似這是去年問的,但這個問題是爲Drupal 6,我想知道是否有一直爲Drupal 7.改變如何使用多個提交表單元素在表單上設置默認提交按鈕?
Can I make the second or later button in a Drupal form the default button?
在我的表單中的問題,我對四個提交按鈕表單元素。四個中的三個具有指定的提交功能,另一個使用默認的hook_form_submit()函數來處理它的提交。
因此,這是三個按鈕幾乎是這樣的:
$form['reset'] = array(
'#type' => 'submit',
'#value' => t('Reset Values'),
'#submit' => array('_phonebook_reset_config'),
);
這是主要的按鈕是什麼樣子:
$form['submit'] = array(
'#type' => 'submit',
'#value' => t('Update'),
);
這是其中的形式創建的按鈕的順序:(Button_1, Button_2, Main_Button, Button_4)
。
現在,如果我按下表格上的輸入,Button_1
得到執行。我希望主按鈕是默認按鈕,這樣當用戶按下回車鍵後,該主按鈕就不會被提交到Button_1
。
在上面提到的帖子中,其中一個答案是使用體重。我嘗試使用重量,但所做的只是改變了按鈕在屏幕上的排列方式。是的,這確實允許Main_Button
被提交,但是我需要那個按鈕在它的原始位置。
JavaScript本來是最後的手段。但是如果沒有其他辦法可以做到這一點,那就不得不這樣做了。 – samwell
@ chudapati09它可能需要一些創造性的樣式,但你總是可以使用CSS。不管怎樣,不要責怪表單API,因爲更改默認提交不能用HTML完成。它總是第一個。 –
@ chudapati09我調查過,似乎這不是Form Api限制。它只是不能用HTML來完成。所以不要因爲不能用PHP做到這一點而感到難過:) –