繁体   English   中英

将参数从php(mysql_query result)传递给onchange事件触发的javascript函数

[英]passing parameter from php(mysql_query result) to javascript function triggered by onchange event

我有一个我无法解决的问题(我不知道我是php和js的新手)。 我有一个文本字段,我想模糊触发js中的函数。 我的问题是我想在tnis函数中传递参数,该参数将从查询中获取。 我的测试代码是:

<script type="text/javascript">
  function calcNums(nums){
    var inText = "00.00";
    if (document.expences.mytext.value != inText){
    var mp = parseInt(nums.substr(0,2));
    var lp = parseInt(nums.substr(3,2));
    document.expences.mytext2.value = lpdeh*parseInt(document.expences.mytext.value)/100; 
    document.expences.mytext.value = mpdeh*parseInt(document.expences.mytext.value)/100; 
    } 
  }
</script>

<?php

    $selNums = "SELECT DEH_NUMS FROM BUILDING WHERE idBUILDING = '3'";
    $nums = mysql_query($selNums) or die("Could not execute query.");
    <input type="text" name="mytext" id="mytext"  value="00.00" onblur="calcNums($nums)"/>
    <input type="text" name="mytext2" id="mytext2"  value="00.00"/>
?> 

我的观点是:我得到的类型为“ 50-50”的$ nums(代表百分比)。 获取“ mytext”的初始值,并为“ mytext”和“ mytext2”计算新值。 例如:$ nums = '60 -40'initialMytext = 100-> new mytext = 60 mytext2 = 40

如果我在calcNums()中放入一个内部变量,则计算正确,但不会触发该参数。

有人可以帮忙吗? 提前致谢!

写这个,它会解决

<script type="text/javascript">
  function calcNums(nums){
    var inText = "00.00";
    if (document.expences.mytext.value != inText){
    var mp = parseInt(nums.substr(0,2));
    var lp = parseInt(nums.substr(3,2));
    document.expences.mytext2.value = lpdeh*parseInt(document.expences.mytext.value)/100; 
    document.expences.mytext.value = mpdeh*parseInt(document.expences.mytext.value)/100; 
    } 
  }
</script>

<?php
    $selNums = "SELECT DEH_NUMS FROM BUILDING WHERE idBUILDING = '3'";
    $results = mysql_query($selNums);
    if (!$results) die("Could not execute query.");

    $row = mysql_fetch_assoc($results);
    $nums = $row['DEH_NUMS'];
?>
<input type="text" name="mytext" id="mytext"  value="00.00" onblur="calcNums('<?php echo $nums;?>')"/>
<input type="text" name="mytext2" id="mytext2"  value="00.00"/> 

您正在PHP中混合HTML。 做这样的事情:

<?php
$selNums = "SELECT DEH_NUMS FROM BUILDING WHERE idBUILDING = '3'";
$nums = mysql_query($selNums) or die("Could not execute query.");
?>
<input type="text" name="mytext" id="mytext"  value="00.00" onblur="calcNums(<?php $nums ?>)"/>
<input type="text" name="mytext2" id="mytext2"  value="00.00"/>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM