我有一个我无法解决的问题(我不知道为什么我是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"/>
?>
我的观点是:我得到的'num'类型为'50 -50'(代表百分比)。获取“mytext”的初始值并计算“mytext”和“mytext2”的新值。 示例:$ nums = '60 -40'initialMytext = 100 - &gt; new mytext = 60 mytext2 = 40
如果我在calcNums()中放入一个内部var,那么计算是正确的,但是没有触发参数。
有人可以帮忙吗? 提前谢谢!
答案 0 :(得分:1)
写下这个,它将修复
<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"/>
答案 1 :(得分:0)
你在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"/>