当前位置: 首页 > 知识库问答 >
问题:

选择元素的ajax联系人表单错误

魏宏邈
2023-03-14

我已经从输入字段和选择元素的ajax联系,它没有给出应有的结果。

HTML 表单代码(名称作为输入,苹果手机作为选择元素)

 <div id="contact_form">
    <form name="contact" method="post" action="">Name
        <input type="text" name="name" id="name" />Iphone
        <select name="iphone" id="iphone">
            <option value="Iphone 4" selected>Iphone 4</option>
            <option value="Iphone 4S">Iphone 4S</option>
            <option value="5">Iphone 5</option>
        </select>
        <input type="submit" name="submit" class="button" id="submit_btn" value="Send"
        />
    </form>
</div>

JS代码

   $(function () {
       $('.error').hide();
       var dataString = 'name=' + name + '&iphone=' + iphone;
       $.ajax({
           type: "POST",
           url: "send.php",
           data: dataString,
           success: function () {
               $('#contact_form').html("<div id='message'></div>");
               $('#message').html("<h2>Contact Form Submitted!</h2>")
                   .append("<p>We will be in touch soon.</p>")
                   .hide()
           }
       });
       return false;
   });

发送.php)代码

<?PHP
$name = $_POST['name'];
$iphone = $_POST['iphone'];

$email="my@mail.com";
$from="anyone@mail.com";

$subject="Contact Email";
$headers = "Content-type: text/html; charset=windows-1256\r\n";
$headers .= "From: $from\r\n";

$mailtext="name : $name - Iphone : $iphone";

mail($email,$subject,$mailtext,$headers);
?>

当我使用来自任何人的姓名时的结果

Name : anyone - Iphone : [object HTMLSelectElement]

[object HTMLSelectElement]这是一个错误,select元素似乎不工作,没有传递其选定的值

所以任何想法?~谢谢

共有2个答案

彭展
2023-03-14

确保你得到的iPhone价值如下:

var iphone = $("#iphone").val();

$. post会更优雅…

$.post("send.php", { name: name, iphone: iphone },
   function(data) {
     alert("Data Loaded: " + data);
   });
弓晔
2023-03-14

我对你的代码做了一点修改,我做的是在你的表单上附加一个提交处理程序,阻止默认操作,这是最重要的部分。我序列化表单的内容。试试这个,告诉我这是怎么回事。我通常像这样提交我的Ajax化表单。虽然我不确定这是不是一个好的练习,但是你应该试试。

   $(function () {

        $('.error').hide();
        $('form[name=contact]').submit(function(e){
            e.preventDefault();
            var form_data = $(this).serialize();        
            $.ajax({
                type: "POST",
                url: "send.php",
                data: form_data,
                success: function () {
                    $('#contact_form').html("<div id='message'></div>");
                    $('#message').html("<h2>Contact Form Submitted!</h2>")
                        .append("<p>We will be in touch soon.</p>")
                        .hide()
                }
            });
        });
    });
 类似资料:
  • Since 8.3 chooseContact 唤起支付宝通讯录,选择一个或者多个支付宝联系人 使用方法 AlipayJSBridge.call('chooseContact', { "type": "single", "title": "choose contacts", "multiMax": 20, "multiMaxText": "max!", },

  • Since 8.0 contact 选择本地系统通信录中某个人的一个联系电话 使用方法 AlipayJSBridge.call("contact", function(result) { console.log(result.name, result.mobile); }); 代码演示 基本功能 <h1>点击调出本地通讯录</h1> <a href="javascript:void(0)"

  • 我正在为我的项目构建一个ajax/php联系表单,包含以下字段: 姓名(必填)、电子邮件(必填)、主题(必填)和网站(必填) 一切正常,现在唯一的问题是,如果用户没有在主题和或网站字段中键入任何内容,我收到的电子邮件显示这两个字段如下: 主题:(显示空白) 网址:(显示空白) 如果用户没有在我收到的电子邮件中键入任何内容,是否可能根本不显示这两个字段 名称:[用户名] 邮箱:[用户邮箱地址] 我只

  • 本文向大家介绍Drupal 9:级联Ajax选择表单,包括了Drupal 9:级联Ajax选择表单的使用技巧和注意事项,需要的朋友参考一下 借助Drupal 9中内置的Ajax和状态系统,可以很轻松地将表单中的不同选择元素绑定在一起。这意味着任何Drupal表单都可以具有一个select元素,该元素可以将选项显示和更新为同一表单中的另一个select元素。 。使用此系统,您可以创建一个分层系统,其

  • 联系人名单     登录至联系人名单 确认登入状态 编辑联系人名单

  • 本文向大家介绍jQuery 选择元素的子元素,包括了jQuery 选择元素的子元素的使用技巧和注意事项,需要的朋友参考一下 示例 要选择元素的子代,可以使用children()方法。 更改元素所有子.parent元素的颜色: 该方法接受一个可选selector参数,该参数可用于过滤返回的元素。