我正在尝试将新行追加到我的表中,但是一些输入字段从mysql中获得了一些值。我知道php是服务器端和javascript客户端执行的。帮助我。
需要附加的代码:
<td>
<select name="categories[]">
<?php foreach(categories() as $row){
foreach($row as $key=>$cell){
echo '<option>'.$cell.'</option>';
}
}?>
</select>
</td>
所以我的jquery追加是上面的确切代码变成了一个字符串:
SOMECODE.append('<td><select name="categories[]"><?php foreach(categories() as $row){foreach($row as $key=>$cell){echo "<option>".$cell."</option>";}}?></select></td>');
那么如何使用jquery附加我的php代码?
答案 0 :(得分:3)
您可以将PHP与JavaScript混合,假设它在有效的PHP页面上运行。
例如,以下内容应该达到您要做的目的:
var td = SOMECODE.append('<td />'),
sel = td.append('<select name="categorii[]" />');
<?php
foreach(categorii() as $row)
{
foreach($row as $key => $cell)
{
echo "sel.append('<option>$cell</option>')";
}
}
?>
答案 1 :(得分:1)
是的,你可以,但不会执行。你自己说的。它是服务器端语言。你需要的是ajax。只需创建一个与您想要的数据相呼应的PHP脚本。接收客户端并附加数据。
答案 2 :(得分:1)
你不能,也没有必要。相反,您可以使用Ajax抓取新信息,然后使用JavaScript抓取create elements来保存该数据并append that information to the DOM:
答案 3 :(得分:1)
所以问题不在于如何通过javascript执行PHP代码,你的问题是如何将正确的数据导入Javascript。
有不同的可能性:
由于您的示例不需要任何创建cetegories的信息,因此您只需要创建它们的php脚本。没有必要提供页面并要求javascript获取数据,这是静态的。只需在页面上提供此静态数据即可。
答案 4 :(得分:0)
你不能使用javascript附加php代码。 PHP由服务器运行,javascript在浏览器上运行。但是,在PHP文件中,您可以使用<script>
标记创建一个函数来执行此操作。
<script>
function appendCategories(SOMECODE) {
SOMECODE.append('<td><select name="categorii[]"><?php foreach(categorii() as $row){foreach($row as $key=>$cell){echo "<option>".stripslashes($cell)."</option>";}}?></select></td>');
}
</script>