【发布时间】:2015-10-09 13:25:50
【问题描述】:
我尝试将带有“依赖下拉列表”(使用 Javascript)的 PHP 站点集成到我的 Wordpress 站点中。当我在“外部”Wordpress 运行 PHP 站点时(这意味着整个 URL,例如:“www.xxx.com/wp-content/themes/lawyerplus/upload.php”)然后一切都按预期工作 - 这意味着“依赖下拉列表”列表”将被填充,但是当我在 wordpress 中运行同一页面时:www.xxx.com/upload/ 然后 javascript 将不会运行,因此不会填充列表。
所以问题是:我如何告诉 Wordpress,它应该运行 PHP 文件中的 Javascript 文件,这些文件将使用 Wordpress 插件“MaGiKS Proper PHP Include”进行集成?
这是 upload.php 中将调用 Rubrik(Category) 的部分。这是有效的,因此将显示类别 (Rubrik)。
<tr>
<td>Rubrik*</td>
<td><? include "test.php"; ?></td>
</tr
这里是test.php的内容
<?php include('config.php');
mysql_query("SET CHARACTER SET 'utf8'");
$query_parent = mysql_query("SELECT DISTINCT cat_id, category FROM category order by category asc") or die("Query failed: ".mysql_error());
?>
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Dependent DropDown List</title>
<script type="text/javascript" src="http://austrianweddingaward.at/wp-content/themes/lawyerplus/js/jquery.js"></script>
<script type="text/javascript">
jQuery(document).ready(function() {
jQuery("#parent_cat").change(function() {
jQuery(this).after('<div id="loader"><img src="http://www.austrianweddingaward.at/wp-content/themes/lawyerplus/img/loading.gif" alt="loading subcategory" /></div>');
jQuery.get('http://www.austrianweddingaward.at/wp-content/themes/lawyerplus/loadsubcat.php?parent_cat=' + jQuery(this).val(), function(data) {
jQuery("#sub_cat").html(data);
jQuery('#loader').slideUp(200, function() {
jQuery(this).remove();
});
});
});
});
</script>
</head>
<body>
<form method="get">
<label for="category">Hauptkategorie</label>
<select name="parent_cat" id="parent_cat">
<?php while($row = mysql_fetch_array($query_parent)): ?>
<option value="<?php echo $row['cat_id']; ?>"><?php echo $row['category']; ?></option>
<?php endwhile; ?>
</select>
<br/><br/>
<label>Unterkategorie</label>
<select name="sub_cat" id="sub_cat"></select>
</form>
</body>
</html>
这里是loadsubcat.php的内容
<?php
include('config.php');
$parent_cat = $_GET['parent_cat'];
echo $parent_cat;
mysql_query("SET CHARACTER SET 'utf8'");
$query = mysql_query("SELECT * FROM subcategory WHERE cat_id = '$parent_cat'");
echo $query;
while($row = mysql_fetch_array($query)) {
echo "<option value='$row[id]'>$row[subcategory]</option>";
}
?>
欢迎提出任何建议。
斯蒂芬
【问题讨论】:
-
您需要展示一些示例代码以便人们帮助您。否则,他们无法帮助调试您的问题。
-
1.您是否评论了 loadsubcat.php 中的两个 echo 行?错误的 html 可能是浏览器不显示任何内容的原因。 2.你检查过javascript控制台吗?您是否正在执行跨域请求(前 Chrome 会阻止该请求)? -> developer.mozilla.org/en-US/docs/Web/HTTP/Access_control_CORS 和 stackoverflow.com/questions/5351236/…
-
您好,感谢您的回复。请参阅:austrianweddingaward.at/wp-content/themes/lawyerplus/upload.php - 它正在工作。当您查看:www.austrianweddingaward.at/upload 并滚动到底部时,您会看到它在 Wordpress 中不起作用......亲切的问候,Stefan
标签: javascript php jquery wordpress