1

我正在开发一个单页网站,其中有一个联系表格,其中联系错误和联系感谢消息被放置在页面下方作为隐藏的 div。

联系表单调用一个外部 php 文件,该文件调用错误的锚链接并感谢 index.html 文件中的消息 div。

www.photograsurfer.com/test/index.html

www.photograsurfer.com/test/code/contact-panel.php

只要不隐藏 div,一切都会成功。所以现在我需要使用下面的 javascript 来让隐藏的 div 在需要时显示。

<script type="text/javascript">
function showContactPanelError() {
document.getElementById('contact-panel-error').style.display = "block";
}
</script>

除了作为一个完整的 PHP 初学者之外,我的问题是我不知道如何让 PHP 文件引用 Javascript 代码以在主页上正确显示隐藏的 div。

任何帮助表示赞赏。

谢谢。

4

4 回答 4

0

使用 jQuery 表单 ( http://malsup.com/jquery/form/ ) 通过 AJAX 提交表单,然后div根据您从 PHP 脚本返回的值显示/隐藏。

于 2013-07-09T06:19:46.357 回答
0

您可以将 php 变量分配给 javascript 作为

var error="<?php echo $_GET['error']; ?>";

$error是与网址一起传递的数据,例如 wwww.example.com/test.php?error=1

现在您可以检查 var 错误并调用您的函数 showContactPanelError()。

于 2013-07-09T06:22:10.063 回答
0

您可以在提交按钮上添加 onclick 事件。单击它将创建一个 ajax 调用,将数据发送到所需的外部 PHP 文件,然后成功将在主页上正确显示隐藏的分区。

这是一个示例代码,仅用于解释

**
 * Description : Function that will trigger the AJAX request.
 * @param    none
 */

function CategorySubscriber_Unsubscribe(){

var data = {    
    'data-1':        data-1,
    'data-2':        data-2,
             // as per your need you can put any number of data
};


var url =  // your url

jQuery.post(url, data, function(response){
     jQuery.show("#your-div-id");
});

}

function(response) 将在 ajax 调用处于成功状态时执行。

您可以从这些链接中学习

http://www.w3schools.com/jquery/ajax_post.asp

http://api.jquery.com/jQuery.post/

于 2013-07-09T06:39:42.930 回答
0

我最终在这些页面上混合使用了两种方法。

http://trevordavis.net/blog/ajax-forms-with-jquery

https://spruce.it/noise/simple-ajax-contact-form/#contact

放弃了 div 的想法,因为 Ajax 方法允许我不重新加载页面并在联系表单本身中输入错误和感谢消息。似乎是一种更简单的方法。

感谢所有的建议,否则我永远不会考虑使用 Ajax。

于 2013-07-24T04:48:11.177 回答