我对 jQuery ajax 的工作方式有点困惑。我正在尝试使用 jQuery 和 php 创建一个客户管理系统 (CMS)。
我想给用户创造汽车的机会。假设他必须定义一个“汽车名称”并检查复选框列表中的一些选项。在同一页面上,我让用户有机会添加或删除一些选项。这种添加和删除发生在 jQuery 和 ajax 中。当用户添加一个选项时,我调用一个处理该选项的 php 页面 (addOption.php) 并将其添加到数据库中。如果 ajax 调用成功,我使用 ajax load() 函数重新加载 div 中的选项。谁调用了一个 php 页面 (reloadOptions.php),该页面从数据库中读出选项并将它们构造成一个复选框列表。
这一切都很好。当我尝试检查选中了哪些复选框时会出现问题。(此处难句) 页面源中似乎不存在数据。我认为这是因为 ajax 的异步工作而发生的。我真的需要创建汽车的选项!
最后,我的问题是如何访问该选项数据?如果你不能,还有办法访问这些数据吗?您如何看待我处理 cms 系统的方法?好 / 坏 / 天哪 / ...
以下是我使用的一些代码块:
页面 index.php :处理选项和 html 代码的 jQuery/ajax
//At the start i load the options in
$('.options').load('./php/OptionsReload.php');
$("#FormOptions").submit(function(e) {
$.ajax({
type: "POST",
url: "./php/addOption.php",
data: $(e.target).serialize(),
dataType: "json",
success: function(data) {
$('.options').load('./php/reloadOptions.php');
}
});
return false;
});
..................
//Form where you can add the option
<form id="FormOptions">
<input type="text" name="optionName" />
<input type="submit" name="submitOption" value="Add option" />
</form>
......................
//Div where i show the options to the user
<form name="formChecks" method="post" enctype="multipart/form-data">
<div class="options">
//Content loaded with jQuery
</div>
</form>
页面 addOption.php :将选项添加到数据库的代码
//Database connect
...
return mysql_query("INSERT INTO options(option) VALUES('". $POST_['optionName'] ."');");
页面 reloadOptions.php :使用选项构造 html 的代码
<select name="mydropdown">
<?php
$options = ...... connect with DB and select all the options
while($row = mysql_fetch_assoc($options))
{
echo ("<option value='" . $row['Id'] . "'>" . $row['optionName'] . "</option>");
}
?>
</select>
在此先感谢,伯特