如何制作一个提交表单但没有重新加载页面的按钮?

时间:2014-03-22 14:50:59

标签: php jquery wordpress forms

我有一个表单,它将所有输入设置形成一个数组。 Submin按钮构造方式:

<input name="save" class="button" type="submit" value="Save Settings" />
<input type="hidden" name="action" value="save" />

功能,处理保存或deeting操作是以这种方式构建的:

function theme_settings_page() {
    global $themename,$theme_options;
    $i=0;
    $message='';
        if ( 'save' == $_REQUEST['action'] ) {
            foreach ($theme_options as $value) {
                update_option( $value['id'], $_REQUEST[ $value['id'] ] ); }
            foreach ($theme_options as $value) {
        if( isset( $_REQUEST[ $value['id'] ] ) ) { update_option( $value['id'], $_REQUEST[ $value['id'] ]  ); } else { delete_option( $value['id'] ); } }
                $message='saved';}
        else if( 'reset' == $_REQUEST['action'] ) {
            foreach ($theme_options as $value) {
                delete_option( $value['id'] ); }
                $message='reset';}
        if ( $message=='saved' && $i==0 )  echo '<div id="message" class="apply"><strong>Ustawienia zachowane.</strong></div>' ;
        if ( $message=='reset' ) echo '<div id="message" class="reset"><strong>Ustawienia zresetowane.</strong></div>';

$ value ['id']实际上是从数组中取出所有输入的值。表单的开头和结尾只有:

<form method="post"></form>

表单的内容以制表符形式显示。所以问题是:当点击“保存”按钮时如何使页面不重新加载?

PS:我不确定我给了你足够的数据,但如果你需要了解更多信息,那就问问吧。我正在网上寻找一些例子,但我找不到任何合适的。

2 个答案:

答案 0 :(得分:1)

尝试使用jQuery ajax函数。 https://api.jquery.com/jQuery.ajax/

答案 1 :(得分:0)

在Click上返回false并使用AJAX提交表单(请参阅jQuery for easy AJAX):

<input name="save" class="button" type="submit" value="Save Settings" onclick="doSomething(); return false;"/>


$.ajax({url: "xyz.com/do.php", type: "POST", data: {a: $("save").val()}})