0

私は2つのファイルを持っています.1つはフォームの検証用のファイルで、phpで書かれています.

print '{"captcha_error":"bad"}';
print '{"email_send":"bad"}';
print '{"email_request":"ok"}';

ファイル 2 からフォームを起動するには、json で jquery を使用します。

<script type="text/javascript">
function send_contacter(idcc)
{

$.ajax({

cache: false,
url: 'send_form.php',
type: 'POST',
dataType: 'json', 
success: function(data) {



if (data.captcha_error=="bad")
{
alert("Captcha Error");
}

if (data.email_send=="bad")
{
alert("E-Mail Errors");
}

if (data.email_request=="ok")
{
alert("E-Mail Send");
}

}


});

}
</script>

送信用の同じページで、次のように 1 つのフォームを使用します。

<?php 
$tfw_number_format="1";
?>

<form id="contact-form-widget-<?php echo $tfw_number_format;?>" class="contact-form-widget" method="post" action="" onsubmit="send_contacter('<?php echo $tfw_number_format;?>');return false;" name="contact-form-widget-<?php echo $tfw_number_format;?>">

私が得る問題はこれです、私が行ってフォームを使用するとしますよね?私は1つのアラートを受け取りますが、常に同じアラート、最初のアラート、反対側でフォームを起動してjqueryを使用しない場合はすべて正常に動作します.jqueryが正しく起動せず、jsonが取得されますデータが悪いため、これにより、表示用の実際のデータが検出されず、値が区別されない、と思います.....

検証のために反対側で、もし私がalert(""+data);を使うなら 常に json から値を受け取りません。常にオブジェクト オブジェクトをアラートに表示します

コードに何か問題があると思います

助けてくれてありがとう、よろしく

4

1 に答える 1

0

オブジェクトのプロパティが最初に定義されているかどうかを確認する必要があります。

if (data.captcha_error !== undefined && data.captcha_error=="bad") {
    alert("Captcha Error");
}

if (data.email_send !== undefined && data.email_send=="bad") {
    alert("E-Mail Errors");
}

if (data.email_request !== undefined && data.email_request=="ok") {
    alert("E-Mail Send");
}
于 2013-07-25T03:25:16.193 に答える