Javascript 这个功能的工作原理是什么

Javascript 这个功能的工作原理是什么,javascript,php,html,Javascript,Php,Html,我是php和javascript的新手。 我想知道这个函数的工作原理 <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script> <script type="text/javascript"> $(document).ready(function(){ });

我是php和javascript的新手。 我想知道这个函数的工作原理

 <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script>
        <script type="text/javascript">
            $(document).ready(function(){

            });
            function sendPushNotification(id){
                echo ('I am in Send Push Nottification');
                var data = $('form#'+id).serialize();
                $('form#'+id).unbind('submit');                
                $.ajax({
                    url: "send_message.php",
                    type: 'GET',
                    data: data,
                    beforeSend: function() {

                    },
                    success: function(data, textStatus, xhr) {
                          $('.txt_message').val("");
                    },
                    error: function(xhr, textStatus, errorThrown) {

                    }
                });

                return false;
            }
        </script>
这是我的php文件,我想执行它,但我不能理解这个函数

编辑 这是我的index.html。我想在哪里调用这个函数 但它无法工作。 它是静态工作的,但动态发送数据时无法工作

<!DOCTYPE html>
<html>
    <head>
        <title></title>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script>
        <script type="text/javascript">
            $(document).ready(function(){

            });
            function sendPushNotification(id){
                echo ('I am in Send Push Nottification');
                var data = $('form#'+id).serialize();
                $('form#'+id).unbind('submit');                
                $.ajax({
                    url: "send_message.php",
                    type: 'GET',
                    data: data,
                    beforeSend: function() {

                    },
                    success: function(data, textStatus, xhr) {
                          $('.txt_message').val("");
                    },
                    error: function(xhr, textStatus, errorThrown) {

                    }
                });

                return false;
            }
        </script>

    </head>
    <body>
        <?php
       require_once('db_functions.php');
        $db = new DB_Functions();
        $users = $db->getAllUsers();
        if ($users != false)
            $no_of_users = mysql_num_rows($users);
        else
            $no_of_users = 0;
        ?>
        <div class="container">
            <h1>No of Devices Registered: <?php echo $no_of_users; ?></h1>
            <hr/>
            <ul class="devices">
                <?php
                if ($no_of_users > 0) {
                    ?>
                    <?php
                    while ($row = mysql_fetch_array($users)) {
                        ?>
                        <li>
                            <form id="<?php echo $row["id"] ?>" name="" method="post" 
                            onsubmit="return sendPushNotification( $row["id"])">
                                <label>Name: </label> <span><?php echo $row["name"] ?></span>
                                <div class="clear"></div>
                                <label>Email:</label> <span><?php echo $row["email"] ?></span>
                                <div class="clear"></div>
                                <div class="send_container">                                
                                    <textarea rows="3" name="message" cols="25" class="txt_message"
                                     placeholder="Type message here"></textarea>
                                    <input type="hidden" name="regId" value="<?php echo $row["gcm_regid"] ?>"/>
                                    <input type="submit" class="send_btn" value="Send"
                                     onclick="sendPushNotification( $row["id"])"/>
                                </div>
                            </form>
                        </li>
                    <?php }
                } else { ?> 
                    <li>
                        No Users Registered Yet!
                    </li>
                <?php } ?>
            </ul>
        </div>
    </body>
</html> 

$(文档).ready(函数(){
});
函数sendPushNotification(id){
echo(“我正在发送推送通知”);
var data=$('form#'+id).serialize();
$('form#'+id).unbind('submit');
$.ajax({
url:“send_message.php”,
键入:“GET”,
数据:数据,
beforeSend:function(){
},
成功:函数(数据、文本状态、xhr){
$('.txt_message').val(“”);
},
错误:函数(xhr、textStatus、errorshown){
}
});
返回false;
}
已注册的设备数量:


  • $.ajax
    表示从对象调用方法
    $

    此方法将使用http方法,这意味着数组
    数据
    将附加到URL
    send_message.php
    问号

    只要url不以
    /
    或协议(如http://)开头,就会使用当前协议、主机名和路径,所以最后的字符串将是
    协议://HOST[:PORT]/path/send\u message.php?form\u field\u name=form\u field\u value&form\u field\u name2=form\u field\u value2


    形成完整URL后,此方法将使用依赖于浏览器的方法(例如)调用此URL,并使用结果调用JS函数
    success
    ,它使用
    $('selector')在客户端从表单收集数据。serialize()success
    显示所有数据,如果成功,或者失败,它会使用
    error
    显示所有数据。Ajax用于在不重新加载页面的情况下查询结果。

    我想知道如何使用。它通过Ajax发送数据。这就是你想知道的吗?你想实现什么?删除所有必要的代码,比如样式。为什么你要加载jquery两次?好的解释我添加一些细节你能检查一下为什么它不工作吗
    <!DOCTYPE html>
    <html>
        <head>
            <title></title>
            <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
            <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script>
            <script type="text/javascript">
                $(document).ready(function(){
    
                });
                function sendPushNotification(id){
                    echo ('I am in Send Push Nottification');
                    var data = $('form#'+id).serialize();
                    $('form#'+id).unbind('submit');                
                    $.ajax({
                        url: "send_message.php",
                        type: 'GET',
                        data: data,
                        beforeSend: function() {
    
                        },
                        success: function(data, textStatus, xhr) {
                              $('.txt_message').val("");
                        },
                        error: function(xhr, textStatus, errorThrown) {
    
                        }
                    });
    
                    return false;
                }
            </script>
    
        </head>
        <body>
            <?php
           require_once('db_functions.php');
            $db = new DB_Functions();
            $users = $db->getAllUsers();
            if ($users != false)
                $no_of_users = mysql_num_rows($users);
            else
                $no_of_users = 0;
            ?>
            <div class="container">
                <h1>No of Devices Registered: <?php echo $no_of_users; ?></h1>
                <hr/>
                <ul class="devices">
                    <?php
                    if ($no_of_users > 0) {
                        ?>
                        <?php
                        while ($row = mysql_fetch_array($users)) {
                            ?>
                            <li>
                                <form id="<?php echo $row["id"] ?>" name="" method="post" 
                                onsubmit="return sendPushNotification( $row["id"])">
                                    <label>Name: </label> <span><?php echo $row["name"] ?></span>
                                    <div class="clear"></div>
                                    <label>Email:</label> <span><?php echo $row["email"] ?></span>
                                    <div class="clear"></div>
                                    <div class="send_container">                                
                                        <textarea rows="3" name="message" cols="25" class="txt_message"
                                         placeholder="Type message here"></textarea>
                                        <input type="hidden" name="regId" value="<?php echo $row["gcm_regid"] ?>"/>
                                        <input type="submit" class="send_btn" value="Send"
                                         onclick="sendPushNotification( $row["id"])"/>
                                    </div>
                                </form>
                            </li>
                        <?php }
                    } else { ?> 
                        <li>
                            No Users Registered Yet!
                        </li>
                    <?php } ?>
                </ul>
            </div>
        </body>
    </html>