我似乎无法在我的JavaScript中添加php函数/变量。我需要它来将选项设置为我在javascript中使用的动态选择表单。
我在每个人都推荐的JavaScript中尝试了“”。
<?php
function options(){
include "connection.php";
$sql="SELECT DISTINCT PartID, PartName FROM parts";
$result = mysqli_query($conn,$sql);
if ($result) {
while ($row=mysqli_fetch_assoc($result)){
echo "<option value='{$row['PartID']}'>{$row['PartName']}</option>";
}}}
?>
<script>
$(function(){
$('p#add_part').click(function(){
counter_part += 1;
$('#container').append(
'<strong>Part No.'+ counter_part + '</strong><br />');
$('#container').append(
'<select><option>Select a Part</option>((((((HERE)))))
</select>');
});
});
</script>
相对于我一直尝试的方法,整个功能不起作用。每当我在脚本内添加“”以在选项内添加变量时,整个函数就会停止工作。但是,可以添加一个计数器变量。顺便说一句,我在脚本上方还有其他无关紧要的功能。
答案 0 :(得分:0)
您可以尝试将其存储在PHP的HTML元素中,然后可以从JavaScript中读取它,然后从JavaScript中删除它。您还可以将其设置在页面底部,并将文本颜色设置为与背景颜色相同,以便看不到它。我对PHP不太了解,但是我对JavaScript和HTML知道,所以,抱歉,我只能添加JavaScript和HTML。
HTML:
<span style="background-color:white; color:white;" id="phpVariable"></span>
JavaScript:
var element = document.getElementById("phpVariable"); // Get the element
var phpString = element.textContent; // Get a string
var phpInteger = parseInt(element.textContent) // Get an integer
var phpFloat = parseFloat(element.textContent) // Get a float
element.parentNode.removeChild(element); // Delete the element
对于PHP,您只需要将上面的HTML元素附加到页面底部。如果背景颜色不同,则只需将背景颜色和文本颜色设置为页面的背景颜色即可。这样做将使文本不可见,只需看着它直到JavaScript将其选中并删除该元素即可。
答案 1 :(得分:0)
只需echo
使用PHP的JavaScript函数,就可以轻松地使用字符串concat插入函数变量。例如echo 'alert("'.$var.'");
或类似的东西!
答案 2 :(得分:0)
我不确定您想要的是什么,但是您可以在JS中使用PHP变量的值,并简单地回显文本。我刚刚编辑了您的作品。在$ options变量中声明options并将其返回给函数,这使它们可以通过echo将它们写入JS。您可以直接使用$ options进行操作,而无需使用options()函数。
PHP代码只能运行一次,然后您的回声值将被视为html文件中的硬编码文本。 仅在您需要一次获得价值时使用此功能。
<?php
function options(){
include "connection.php";
$sql="SELECT DISTINCT PartID, PartName FROM parts";
$result = mysqli_query($conn,$sql);
if ($result) {
$options = '';
while ($row=mysqli_fetch_assoc($result)){
$options .= "<option value='".$row['PartID']."'>".$row['PartName']."</option>";
}
}
return $options;
}
?>
<script>
$(function(){
$('p#add_part').click(function(){
counter_part += 1;
$('#container').append(
'<strong>Part No.'+ counter_part + '</strong><br />');
$('#container').append(
"<select><option>Select a Part</option><?php echo options() ?></select>");
});
});
</script>