Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/476.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/294.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将一个var从php发送到javascript不会';行不通_Javascript_Php - Fatal编程技术网

将一个var从php发送到javascript不会';行不通

将一个var从php发送到javascript不会';行不通,javascript,php,Javascript,Php,我想从php脚本向javascript发送一个变量。以下是我到目前为止的情况: <script> function showEditMenuItemForm(name) { document.getElementById('editMenuItemForm').style.display = 'block'; document.editMenuItemForm.menuitem_edit.value == '+name+'; document.editMenu

我想从php脚本向javascript发送一个变量。以下是我到目前为止的情况:

<script>
function showEditMenuItemForm(name) {
    document.getElementById('editMenuItemForm').style.display = 'block';
    document.editMenuItemForm.menuitem_edit.value == '+name+';
    document.editMenuItemForm.menuitem_edit.focus();
    document.getElementById('linkOpenAddMenuListForm').style.display = 'none';
    document.getElementById('addNewMenuItemForm').style.display = 'none';
}
</script>
<?php
if($sygroup == '3') {
    $valueRname = $extract['name'];
    echo '
        <p>
            '.$extract['name'].'
            <a onClick="return returnDeleteSure()" href="systemdeletemenuitem.php?id='.$idfinal.'">
                <img src="img/deleteicon.png" class="icon12">
            </a>
            <img onClick="showEditMenuItemForm('.$valueRname.')" src="img/Edit File-32.png" class="icon12">
        </p>
    ';
}
?>

函数showEditMenuItemForm(名称){
document.getElementById('editMenuItemForm')。style.display='block';
document.editMenuItemForm.menuitem_edit.value=='+name+';
document.editMenuItemForm.menuitem_edit.focus();
document.getElementById('linkOpenAddMenuListForm')。style.display='none';
document.getElementById('addNewMenuItemForm')。style.display='none';
}
我不知道为什么,但该值不是php变量(它是空的,而不是'Test',例如)。所以脚本不起作用

我希望你能帮助我

对不起,我的英语不好,顺便说一句,我希望你能理解这个问题:)


更改为此。如果将文本传递给javascript函数,则它必须介于''


假设:

$sygroup == '3'
以及:

以及:

您在这里仍然有几个问题:

1) 这部分代码就在这里:

<img onClick="showEditMenuItemForm('.$valueRname.')"
但在本例中,它是一个文本字符串,您可能需要类似以下内容:

<img onClick="showEditMenuItemForm(test)"
document.editMenuItemForm.menuitem_edit.value == "'" + name + "'";

…这将是用字符串连接变量并确保其周围有引号的正确语法。我不确定您在这里还做了什么。

看看您正在生成的HTML和JS。不要只看PHP,然后想知道为什么JS不能工作

看看JavaScript控制台。它将为您提供有用的错误消息

这:

看起来它将生成如下内容:

"showEditMenuItemForm(Bob)"
这将引发一个引用错误,因为您需要的是字符串文字,而不是变量名

使用
json\u encode
将PHP变量转换为JavaScript文本

使用
htmlspecialchars
将JavaScript文本转换为可以安全地放入HTML属性值中的内容

避免将字符串捣碎在一起

if($sygroup == '3') {
    $valueRname = $extract['name'];
?>
<p>
  <?php echo htmlspecialchars($extract['name']); ?>
  <a onClick="return returnDeleteSure()" 
     href="systemdeletemenuitem.php?id=<?php echo htmlspecialchars(urlencode($idfinal)); ?>">
    <img src="img/deleteicon.png" class="icon12">
  </a>
  <img onClick="showEditMenuItemForm(<?php htmlspecialchars(json_encode($valueRname)); ?>)"
       src="img/Edit File-32.png" class="icon12">
</p>
<?php
}
?>
if($sygroup==“3”){
$valueRname=$extract['name'];
?>


我们需要看看在哪里设置了
$extract['name']
来解决这个问题。你是在表单POST中提交还是在Get中提交?没有足够的代码。你如何设置
$extract['name']
<img onClick="showEditMenuItemForm(test)"
document.editMenuItemForm.menuitem_edit.value == '+name+';
document.editMenuItemForm.menuitem_edit.value == "'" + name + "'";
"showEditMenuItemForm('.$valueRname.')"
"showEditMenuItemForm(Bob)"
if($sygroup == '3') {
    $valueRname = $extract['name'];
?>
<p>
  <?php echo htmlspecialchars($extract['name']); ?>
  <a onClick="return returnDeleteSure()" 
     href="systemdeletemenuitem.php?id=<?php echo htmlspecialchars(urlencode($idfinal)); ?>">
    <img src="img/deleteicon.png" class="icon12">
  </a>
  <img onClick="showEditMenuItemForm(<?php htmlspecialchars(json_encode($valueRname)); ?>)"
       src="img/Edit File-32.png" class="icon12">
</p>
<?php
}
?>