提交请求而不提交 - PHP,AJAX&使用Javascript

时间:2013-03-18 04:56:07

标签: php javascript ajax

我还是PHP编程的初学者。我需要帮助我如何提示所选日期。一个简单的网页,允许用户选择日期(通过javascript),然后单击提交按钮。我想提示用户注明日期,但它的作用是打开一个新页面并显示当前页面。

我的PHP文件:rcl_stock_allocation.php

<html>
    <head>
        <LINK REL=StyleSheet HREF="inc/style.css" TYPE="text/css" MEDIA=screen>
        <LINK REL=StyleSheet HREF="inc/cal_styles.css" TYPE="text/css" MEDIA=screen>
        <script type="text/javascript"  language="javascript" src="inc/myCalendar.js"></script>
        <script type="text/javascript" src="inc/jquery-1.9.1.js"></script>
        <script type="text/javascript">
            function popCal(ThisValue){
                calpop  = new Epoch('epoch_popup','popup',document.getElementById(ThisValue));
                calpop.toggle();
            }
        </script>
        <title>RCL Stock Allocation</title>
    </head>
    <body>
        <?php
        echo "<form name='rcl_stock_allocation' action='' method='get' target=_blank >";
        echo "<table border = '0'>";
        echo "<tr><td colspan='2'><font size='2' ><b>RCL Stock Allocation for Bookshop</b></font></td></tr>";
        print "<tr><td></br></td></tr>";
        print <<<menu1
        <tr><td align=right >Date of Transaction</td><td> <input type="text" id ="transactionDate" name="transactionDate" class = graytextbox readonly=true style='width:80px; text-align:center' value = '$transactionDate' />&nbsp;<a href=# onclick="popCal('transactionDate');">&nbsp;Date Picker</a>

menu1;
        print "</td></tr>";
        echo "<tr><td></td><td><input type='submit' name='load_data' id='load_data' value='Load Stocks' /></td></tr>";
        echo "</table>";
        echo "</form>";
        //echo "lloyd";
        ?>


    </body>
</html>

这是我的javascript:rcl_stkall.js

$(function() {
            $('.error').hide();
            $(".load_data").click(function() {
                $('.error').hide();
                var transactionDate = $("input#transactionDate").val();
                if(transactionDate == ""){
                    $("label#transactionDate").show();
                    $("input#transactionDate").focus();
                    return false;
                }
                var dateOfTransaction = 'date=' + transactionDate;
                alert(dateOfTransaction); return false;
            });
        });

提前致谢。

3 个答案:

答案 0 :(得分:0)

以下是一些基础知识:

当您启动表单时,请删除'target = _blank' - 这不是必需的。

然后,您可以通过阻止默认提交操作来停止提交表单。 在'$(function(){'

中将它添加到您的JS中
$('#rcl_stock_allocation').on('submit', function(e) {
    e.preventDefault();
    // add code here to show prompt the user of the date 
});

如果您在用户被提示输入日期后需要提交表单,请使用:

$('#rcl_stock_allocation').submit();

完成发送表单。

答案 1 :(得分:0)

把type ='button'

    <input type='button' name='load_data' id='load_data' value='Load Stocks' />

答案 2 :(得分:0)

首先,您使用id =“load_data”进行提交按钮

试试这个,

$(“。load_data”)。click(function(){应该是

$(“#load_data”)。click(function(){