1

ホームページからサブドメインページにフォームを送信したい。これが私のコードです

html - ホームページ (メイン ドメイン)

<table>
    <tr>
        <td>Name</td>
        <td><input type="text" name="txtName" id="txtName" /></td>
    </tr>
    <tr>
        <td>Email</td>
        <td><input type="text" name="txtEmail" id="txtEmail" /></td>
    </tr>
    <tr>
        <td><input name="btnSubmit" id="btnSubmit"  value="Submit" type="button"></td>
    </tr>             
</table> 

<form id="getDetails" method="post" action="http://customers.liyyas.com/">
    <input type="hidden" name="act" value="Users" />
    <input type="hidden" name="hdnName" id="hdnName" />
    <input type="hidden" name="hdnEmail" id="hdnEmail" />     
</form>  

脚本

<script type="text/javascript"> 
$(document).ready(function(){
    $('#btnSubmit').click(function()
        {
          alert("hai");
            document.getElementById("getDetails").submit();
            document.getElementById("hdnName").value = $('#txtName').val();
            document.getElementById("hdnEmail").value = $('#txtEmail').val();
     });
    });  
 </script>

サブドメインページ - user.php

<?php 
$act = formatstring($_POST['act']);
switch($act)
{
case "Users":
        $Name=$_POST['hdnName'];
        $Email=$_POST['hdnEmail'];  
        print($Name);
        exit();
}    
?>

サブドメインで値を印刷していますが、印刷されていません

ホームドメインからサブドメインへフォームを送信することはできますか?

4

1 に答える 1

2

フォーム要素のアクション属性をから変更する必要があります

http://customers.liyyas.com/

http://customers.liyyas.com/customers.php

また、このコードによると、あなたはそれを知っていると思います

$('#btnSubmit').click(function()
    {
      alert("hai");
        document.getElementById("getDetails").submit();
        document.getElementById("hdnName").value = $('#txtName').val();
        document.getElementById("hdnEmail").value = $('#txtEmail').val();
 });

hdnName と hdnEmail の値が変更される前にフォームが送信されますか? これは、数行を切り替えることで解決をすばやく切り替えるためのバグである可能性もあります。これがバグである可能性がある理由は、フォームが送信されるとページがリロードされ、JavaScript によって挿入された新しい値がユーザーに表示されないためです。

修正は

$('#btnSubmit').click(function()
    {
      alert("hai");
        document.getElementById("hdnName").value = $('#txtName').val();
        document.getElementById("hdnEmail").value = $('#txtEmail').val();
        document.getElementById("getDetails").submit();
 });
于 2012-11-28T11:01:30.647 に答える