我有一个带有id或'display'的表单。它有一个值要发送,这是一个选择项目,我给了'服务'的ID。
我想将'services'的值发送到我在单独的php页面中创建的函数。该页面名为“functs.php”,函数名称称为“searchResults”。
'searchResults'功能有效,我知道。它查询数据库并输出8个单独的php echo语句。我已经运行了PHP函数并且知道它有效。我知道这些问题与我的javascript有关,因为,我不是最好的JavaScript,并且通常会回避它。
截至目前,代码没有做任何事情。我的表单有自己的动作发布到单独的PHP页面。
<form id="display" action="resultPage.php" method="POST">
我正在尝试使用javascript / ajax立即更新div的内容但是如果用户关闭了jscript,我希望表单可以发布到备用页面。这是我的jscript。
$(document).ready(function() {
$('#display').submit(function(e) {
var formData = $('#services');
$.ajax({
type: "POST",
url: functs.php,
data: '$formData',
datatype: 'json',
success: function(data) {
if (!data.success)
{
$.amwnd({
title: 'Error!',
content: data.message,
buttons: ['ok'],
closer: 'ok'
});
}
}
});
e.preventDefault();
return false;
});
});
PHP代码:
<?php
function searchResults()
{
require 'db_config.php';
$sql= "SQL CODE HERE"
$theStyle = <<<HERE
"height:100%;
width:70%;
margin:4% AUTO 0;
padding:1.75em;
font-size:1.25em;
border-radius:5em;
color:white;
background-color:#b72027;
;"
HERE;
while ($row = mysql_fetch_array($result))
{
echo ("<div style = $theStyle>");
echo ("<table>");
echo ("<tr><td>" . $row["0"] . "</td></tr>");
echo ("<tr><td>" . $row["1"] . "</td>");
echo ("<tr><td>" . $row["2"] . ", " . $row["3"] . " " . $row["4"] . "</td></tr>");
echo ("<tr><td>Phone: " . $row["5"] . "</td></tr>");
echo ("<tr><td>" . "<a href=\"http://" . $row["6"] . "\">" . $row["6"] . "</a>" . "</td></tr>");
echo ("<tr><td>" . $row["8"] . " " . $row["9"] . ", " . $row["10"] . "</td></tr>");
echo ("<tr><td>" . $row["11"] . "</td></tr>");
echo ("<tr><td></td></tr>");
echo ("<tr><td></td></tr>");
echo ("<tr><td>" . $row["7"] . "</td></tr>");
echo ("</table>");
echo ("</div>");
echo ("<br />");
}
}
?>
答案 0 :(得分:1)
您的JS代码有几个问题。 PHP脚本名称必须是引号内的字符串,并且formData变量具有不必要的“$”。试试这个:
$(document).ready(function() {
$('#display').submit(function(e) {
e.preventDefault();
var formData = $('#display').serialize();
$.ajax({
type: "POST",
url: 'functs.php',
data: formData,
datatype: 'json',
success: function(data) {
if (!data.success)
{
$.amwnd({
title: 'Error!',
content: data.message,
buttons: ['ok'],
closer: 'ok'
});
}
}
});
});
});