如何将javascript变量作为php参数发送

时间:2013-05-10 10:16:04

标签: php javascript parameters

嗨我有一个javascript函数打开一个弹出窗口并打开一个php文件但我甚至想用它发送一个参数但它不起作用参数作为变量名而不是它的值发送 这是我的剧本

             <?php 

 if($addflag == 0){
echo "
<script type=\"text/javascript\">
function mopen(){
var mobj=document.getElementById('dtype').value; //// this variable is shown as a name instead of its value
window.open('quotprin.php?vouchno=' . urlencode($getvouch) . '&dtype=mobj','popUpWindow','height=800,width=950,left=100,top=100,resizable=yes,scrollbars=yes,toolbar=yes,menubar=no,location=no,directories=no, status=yes');
}
</script>
";

echo "<td>";
echo '<font color="red">Print On Letter Head</font>
<input type="checkbox" id="dtype" name="dtype" value="1" checked="checked" />';
echo '<input class="cmdprint" type="button" id="submit" name="print" value="Print" onclick="mopen();"></td>';
echo "<td>";
}
            ?>

2 个答案:

答案 0 :(得分:0)

这不完全是您的原始代码,但它确实有效。您有太多的转义斜杠和单引号或双引号。弄清这样的错误可能太困惑了。

<?php 

$getvouch = isset($_GET['getvouch'])? $_GET['getvouch'] : null;

?>

    <script type="text/javascript">
    function mopen(){
       var mobj=document.getElementById('dtype').value;
       var url="quotprin.php?vouchno=<?php echo $getvouch; ?>&dtype="+ mobj;
       window.open(url,'popUpWindow','height=800,width=950,left=100,top=100,resizable=yes,scrollbars=yes,toolbar=yes,menubar=no,location=no,directories=no, status=yes');
    }
    </script>

    <table><tr><td>
    <font color="red">Print On Letter Head</font>
    <input type="checkbox" id="dtype" name="dtype" value="1" checked="checked" />
    <input class="cmdprint" type="button" id="submit" name="print" value="Print" onclick="mopen();"></td>
    </tr></table>

这里最重要的是看看如何将“getvouch”变量添加到getmobi网址。

如果您使用此网址:add-a-javascript-var-and-send-it-with-post.php?getvouch = 6

获取mobi链接:quotprin.php?vouchno = 6&amp; dtype = mobj

如果这不是问题,请解释一下。

更新。 现在我看到错误是你没有在url中转义mobj变量。尝试改变。

答案 1 :(得分:0)

try this:      
<?php 

if($addflag == 0){
$getvouch = urlencode($getvouch);
echo "
<script type=\"text/javascript\">
function mopen(){
var mobj=document.getElementById('dtype').value; //// this variable is shown as a name     instead of its value
window.open('quotprin.php?vouchno=    {$getvouch}&dtype=mobj','popUpWindow','height=800,width=950,left=100,top=100,resizable=yes,    scrollbars=yes,toolbar=yes,menubar=no,location=no,directories=no, status=yes');
}
</script>
";

echo "<td>";
echo '<font color="red">Print On Letter Head</font>
<input type="checkbox" id="dtype" name="dtype" value="1" checked="checked" />';
echo '<input class="cmdprint" type="button" id="submit" name="print" value="Print"     onclick="mopen();"></td>';
echo "<td>";
}
          ?>