Adn*_*nan 1 php jquery drupal-7
使用Drupal 7表单API,如何在提交AJAX表单之前提示javascript确认框?我尝试过不同的方法来做到这一点,但没有成功.这是代码:
function create_list_form($form, &$form_state) {
$form['list_name'] = array(
'#type' => 'textfield',
'#required' => TRUE,
'#title' => 'List Name'
'#attributes' => array()
);
$form['list_desc'] = array(
'#type' => 'textfield',
'#required' => TRUE,
'#title' => 'List Desc'
'#attributes' => array()
);
$form['actions']['submit'] = array(
'#type' => 'submit',
'#attributes' => array('class' => array('use-ajax-submit')),
'#value' => 'Create List'
);
return $form;
}
Run Code Online (Sandbox Code Playgroud)
这是Javascript代码:
Drupal.behaviors.module = {
attach: function() {
jQuery('#edit-submit').click(function(){
if(!confirm('Are you sure?'))
return false;
});
}
}
Run Code Online (Sandbox Code Playgroud)
我找到了解决方案.我们可以通过覆盖beforeSerialize()函数来实现:
Drupal.behaviors.module = {
attach: function() {
Drupal.ajax['edit-submit'].beforeSerialize = function () {
if(confirm('Are you sure?'))
return true;
else
return false;
}
}
}
Run Code Online (Sandbox Code Playgroud)