[英]javascript negative number in pull down
When I click "EDIT" link on a specific user it is suppose to tell me how many vacation days he/she has left... the Edit link is like this: 当我单击特定用户上的“编辑”链接时,应该告诉我他/她离开了多少休假日...编辑链接是这样的:
print "<a href=\"javascript:editUser('$data[uid]','$data[vacationdays]')\">Edit</a>\n";
So when i click EDIT on ADMIN account: javascript:editUser('Admin','-3.0') is the actual values 因此,当我在ADMIN帐户上单击“编辑”时:javascript:editUser('Admin','-3.0')是实际值
The javascript: JavaScript:
<script language="javascript">
function editUser(uid, vacationdays) {
document.userForm.uid.value = uid;
document.userForm.vacationdays.value = vacationdays;
document.location.href = "#AddEdit";
}
</script>
The website PHP/HTML: 网站PHP / HTML:
Vacation days: <select name="vacationdays" id="vacationdays" />
<?php
for ($i=-30.5;$i<30.5;$i+=0.5)
echo "<option value=\"$i\">$i</option>\n";
?>
</select>
The problem is only with negative numbers (-1 or -2...etc) not showing up in the form pull down menu. 问题仅在于负数(-1或-2 ...等)未出现在下拉菜单中。 Positive numbers show up no problem. 正数表示没有问题。
Example positive number: 正数示例:
Example negative number: 负数示例:
**** i dont want to be able to select a negative values from the pull down.. but if the value is negative i just want it to show once and when you click on the pull down you can only select positive numbers **** ****我不想从下拉列表中选择一个负值。但是,如果该值为负,我只希望它显示一次,当您单击下拉列表时,您只能选择一个正数** **
If i change the pulldown to a TEXTFIELD it works perfectly fine with negative numbers...weird? 如果我将下拉菜单更改为TEXTFIELD,则在负数的情况下效果很好...很奇怪吗?
Just add the negative numbers to your list : 只需将负数添加到您的列表中:
function vacationdays_list() {
for ($i=-30.5; $i<30.5; $i+=0.5)
echo "<option value=\"$i\">$i</option>\n";
}
generate list for negative number between -30.5 till 0 生成-30.5到0之间的负数的列表
for ($i=-30.5;$i<0;$i+=0.5)
echo "<option value=\"$i\">$i</option>\n";
generate list for number between -30.5 till +30.5 生成-30.5到+30.5之间的数字的列表
for ($i=-30.5;$i<30.5;$i+=0.5)
echo "<option value=\"$i\">$i</option>\n";
if you want always selected be a positive number you can use Absolute abs()
http://php.net/manual/en/function.abs.php in php or Math.abs
in JavaScript 如果您希望始终选择一个正数,则可以使用php中的Absolute abs()
http://php.net/manual/en/function.abs.php或JavaScript中的Math.abs
generate list for number between -30.5 till +30.5 that negative number is disabled 生成-30.5到+30.5之间的数字的列表,该数字已禁用负数
for ($i=0;$i<30.5;$i+=0.5)
echo "<option value=\"$i\" >$i</option>\n";
for ($i=-30.5;$i<0;$i+=0.5)
echo "<option value=\"$i\" disabled>$i</option>\n";
edit: 编辑:
Vacation days: <select name="vacationdays" id="vacationdays" />
<?php
for ($i=30.5;$i>0;$i-=0.5)
echo "<option value=\"$i\" >$i</option>\n";
for ($i=0;$i>-30.5;$i-=0.5)
echo "<option value=\"$i\" disabled>$i</option>\n";
?>
</select>
You don't need to echo
your function, so it should be 您无需echo
您的函数,因此应该
Vacation days: <select name="vacationdays" id="vacationdays" />
<?php vacationdays_list(); ?>
</select>
and for negative numbers 和负数
function vacationdays_list() {
for ($i=-30.5; $i<30.5; $i+=0.5)
echo "<option value=\"$i\">$i</option>\n";
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.