Dojo-如何使用对话框表单提交数据



我想提交一些用户在对话框表单中输入的值。他点击按钮,给出自己的名字、名字、电子邮件并提交。

当他提交时,我希望将这些值存储在DB中。我有一个php脚本,应该从用户那里获取这些值。。。但我不知道如何在提交到php脚本后发送这些值。

谢谢你的帮助。

---php脚本----->到目前为止只是打印,没有DB存储,但打印不起作用

    <?php 
$name= $_POST["name"];
$firstName= $_POST["firstName"]; 
$email = $_POST["email"]; 
print("$name+ $firstName+ $email<br>"); 
?> 

-----------------------HTML页面-----------------------

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
    <head>
        <meta name="generator" content="HTML Tidy for Windows (vers 14 February 2006), see www.w3.org">
        <title>
            Dojo 
        </title>
        <meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
        <link rel="stylesheet" type="text/css" href="../js/dojo/resources/dojo.css">
        <link rel="stylesheet" type="text/css" href="../js/dijit/themes/claro/claro.css">
        <style type="text/css"> body {margin-left: 10px; margin-top: 10px;} </style>        <script type="text/javascript" src="../js/dojo/dojo.js" djconfig="parseOnLoad:true, isDebug: true"></script>        
<script type="text/javascript"> 
dojo.require("dijit.form.Button"); 
dojo.require("dojo.parser"); 
dojo.require("dijit.Dialog"); 
dojo.require("dijit.form.TextBox"); 
dojo.require("dijit.form.ValidationTextBox"); 
dojo.require("dojox.validate.regexp"); 
dojo.addOnLoad(function() { 
        form = dijit.byId("subscription"); 
        dojo.connect(dijit.byId("button1"), "onClick", form, "show"); 
}); 
</script>    
`enter code here`</head>
    <body class="claro">
        <div dojotype="dijit.Dialog" id="subscription" title="subscription form" execute="alert('Transmitted');">
        <table>
                <tr>
                    <td>
                        Name: 
                    </td>
                    <td>
                        <input dojotype="dijit.form.TextBox" type="text" name="name" id="name">
                    </td>
                </tr>
                <tr>
                    <td>
                        FirstName: 
                    </td>
                    <td>
                        <input dojotype="dijit.form.TextBox" type="text" name="firstName" id="firstName">
                    </td>
                </tr>
                <tr>
                    <td>
                        Email : 
                    </td>
                    <td>
                        <input type="text" name="mail" id="mail" dojotype="dijit.form.ValidationTextBox" 
                        regexpgen="dojox.validate.regexp.emailAddress">
                    </td>
                </tr>
                <tr>
                    <td align="center" colspan="2">
                        <button dojotype="dijit.form.Button" type="submit" onclick="return dijit.byId('subscription').isValid();">OK</button>  
                        <button dojotype="dijit.form.Button" type="button" onclick="dijit.byId('subscription').hide();">Annuler</button>
                    </td>
                </tr>
            </table>
        </div>
                <button id="button1" dojotype="dijit.form.Button" type="button">Sign</button>
    </body>
</html>

对话框中没有实际的<form>标记。你需要这样的东西:

<div dojotype="dijit.Dialog" id="subscription" title="subscription form" execute="alert('Transmitted');">
  <form action="PATH_TO_PHP_PAGE" method="POST">
      <!--input widgets-->
      <!--submit button widgets-->
  </form>
</div>

如果你想使用具有良好验证功能的dijit表单,你需要dijit.form.Form并将其放在表单标签上:

<form dojoType="dijit.form.Form">

最新更新