JavaScript Ajax和邮件/票务

时间:2019-03-15 17:06:51

标签: javascript php ajax

我正在做一个项目,这个项目有一个Bootstrap模式,可以发送票证,但我也想同时发送电子邮件给同一个人。但是我想念一些东西。

<div class="modal-body">
                            <form onsubmit="return false" id="new_message_form" autocomplete="off">
                                <input type="hidden" name="form_type" value="new_message">
                                <input type="hidden" name="ticket_id" id="ticket_id" value="<?=$id;?>">

                                <div class="row">
                                    <div class="col-md-12">
                                        <div class="form-group no-margin">
                                            <textarea class="ckeditor" id="message_new" name="message_new"></textarea>
                                        </div>
                                    </div>
                                </div>
                            </div>
                            <div class="modal-footer">
                                <a href="#" class="btn btn-<?=$this->Configs->get_info("theme_buttons2");?>" data-dismiss="modal">Close</a>
                                <button id="ticket_message_add" class="btn <?=$this->Configs->get_info("theme_buttons");?>">Send</button>
                            </form>

并将其发送到admin.js

    $("#ticket_message_update").click(function (){
    CKEDITOR.instances['message_update'].updateElement();
    $("#UpdateMessageModal").modal("hide");

    $.post(base_admin+"support", $("#update_message_form").serialize() ,function(data){

    var data= JSON.parse(data);

     if(data.update== 1){ 
$('#update_message_form')[0].reset();
location.reload();
}

  });
});

这就是问题。我已经在php邮件系统中使用了完全正常的ajax表单。但是,当我尝试合并票证和电子邮件系统时,似乎不起作用,但从逻辑上讲应该如此。

我要在按钮/输入字段上添加功能

onclick="AjaxFunction();"

<button id="ticket_message_add" onclick="AjaxFunction();" class="btn <?=$this->Configs->get_info("theme_buttons");?>">Send</button>

并添加我的脚本;

<script>
                                function AjaxFunction() {
                                    var bilgi = {
                                        userid: $('#user').val(),
                                        ad: $('#ticket_id').val(),
                                        soyad: $('#message_new').val()
                                    }
                                    $.ajax({
                                        type: 'post',
                                        url: 'gonder.php',
                                        data: {query: bilgi},
                                        success: function(result) {

                                        }
                                    });

                                }
                            </script>

它需要将变量发送到“ gonder.php”吧?但事实并非如此。显然我缺少了一些东西。

1 个答案:

答案 0 :(得分:0)

您好,尝试发送如下数据:

 function AjaxFunction() {
    var bilgi = [{  
        userid: $('#user').val(),
        ad: $('#ticket_id').val(),
        soyad: $('#message_new').val()
    }];  

 $.ajax({
        type: 'post',
        url: 'gonder.php',
        data: {query: JSON.stringify(bilgi)},
        success: function(result) {

        }
      });
}

然后在服务器端:

<?php
$data = json_decode($_POST["query"]);
// will echo the JSON.stringified - string:
echo $_POST["query"];
// will echo the json_decode'd object
var_dump($data);
//traversing the whole object and accessing properties:
foreach($data as $cityObject){
    echo "userid: " . $cityObject->userid. ", ad: " . $cityObject->ad. "<br/>";
}
?>

希望有帮助