使用jQuery提交表单 [已关闭]

9 浏览
0 Comments

使用jQuery提交表单 [已关闭]

我想使用jQuery提交一个表单。有人能提供代码、演示或示例链接吗?

0
0 Comments

问题的出现原因是当存在一个已有的表单,而现在要使用jQuery的ajax/post功能来提交表单时,需要对表单的提交事件进行处理。解决方法是通过以下步骤来实现:

1. 监听表单的提交事件。

2. 阻止默认的提交功能。

3. 自定义处理逻辑。

以下是解决问题的代码示例:

$(function() {
    // 监听表单的提交事件
    $("#myform").submit(function(e) {
        // 阻止默认的提交功能
        e.preventDefault();
        // 获取表单的action地址
        var actionurl = e.currentTarget.action;
        // 发送自定义的请求并处理结果
        $.ajax({
                url: actionurl,
                type: 'post',
                dataType: 'application/json',
                data: $("#myform").serialize(),
                success: function(data) {
                    ... 处理返回的数据...
                }
        });
    });
});

需要注意的是,在上述示例中,为了使`serialize()`函数正常工作,所有的表单元素都需要定义`name`属性。

以下是一个示例表单的代码:

.. .

在本示例中,数据通过POST方式提交,所以可以通过`$_POST['dataproperty1']`来访问数据,其中`dataproperty1`是你的json中的一个变量名。

以下是如果使用CodeIgniter框架来处理数据的示例语法:

$pdata = $this->input->post();
$prop1 = $pdata['prop1'];
$prop1 = $pdata['prop2'];

0
0 Comments

问题:如何使用jQuery提交表单?

解决方法:使用$("#formId").submit()方法来提交表单。一般情况下,需要在一个函数内调用该方法。下面是一个示例代码:



如果想要获取更多关于此方法的信息,可以访问jQuery官方网站

如果已经使用了jQuery,为什么还要使用内联的onclick属性呢?

0
0 Comments

问题:如何使用jQuery提交表单?

原因:根据表单的提交方式不同,解决方法也不同。对于普通的表单提交,可以使用submit()方法;对于使用AJAX进行表单提交,则可以使用ajax()post()方法。

解决方法:

1. 普通表单提交:

$('form#myForm').submit();

2. AJAX表单提交:

$('input#submitButton').click( function() {
    $.post( 'some-url', $('form#myForm').serialize(), function(data) {
         // ... 处理服务器返回的响应数据
       },
       'json' // 期望得到JSON格式的响应
    );
});
$('input#submitButton').click( function() {
    $.ajax({
        url: 'some-url',
        type: 'post',
        dataType: 'json',
        data: $('form#myForm').serialize(),
        success: function(data) {
                   // ... 处理数据...
                 }
    });
});

需要注意的是,上述例子中的ajax()方法和post()方法是等价的。可以根据需要添加其他参数来处理错误等情况。

0