如何代码,不知道问题出在那里, txtga48就是不出结果出来,请大师指教,谢谢.
<script type="text/javascript" src="../Js/DatePicker/WdatePicker.js"></script>
<script type="text/javascript" src="../Js/jquery-2.0.3.min.js"></script>
<script type="text/javascript" >
$(document).ready(function () {
var txtga91=$("#txtga91").val();
var txtga95 = $("#txtga95").val();
var txtga41 = $("#txtga41").val();
if (txtga91 != "" && txtga95 != "" && txtga41 != "") {
$("#txtga91").blur(function(){
$("#txtga48").attr("value",txtga91/txtga95/txtga41);
});
}
});
</script>
var txtga91=$("#txtga91").val();
var txtga95 = $("#txtga95").val();
var txtga41 = $("#txtga41").val();
这三个值都是String的,怎么可以直接做除法运算。
可以先进性类型转换试试
能不能给个例子,转换的例子呢
监视下变量txtga91、txtga95、txtga41,看是不是都属数字或者有0的
不会调试jquery,也可以打断点吗
@zhengyingcan: 你的是服务端控件,实际生成id跟你原先的可能回不一样
var txtga91=$("#txtga91").val();
应该换成
var txtga91=$("#<%=txtga91.ClientID %>").val();
@小欢乐: 换了也不行 ,
我发现了一个问题,$("#txtga91").val() 是有值的,但是 var txtga91=$("#txtga91").val();
txtga91是没有值的,
@zhengyingcan: 把页面存下来发给我 我看看 cncc0824@126.com
jquery高版本貌似对文本框attr(“value”,"值")这种方式不太支持,你可以使用js的原生态来赋值:document.getElementById(“txtga48”).value=txtga91/txtga95/txtga41;
出来的结果为NaN
$("#txtga48").attr("value",((txtga91/txtga95)/txtga41));//或
$("#txtga48").attr("value",txtga91[0]/txtga95[0]/txtga41[0]);//[0]转Dom试下
实在不行
var $temp=txtga91/txtga95;alert($temp)看有结果没
试下咯
出来的结果为 NaN
var txtga91=$("#txtga91").val();
var txtga95 = $("#txtga95").val();
var txtga41 = $("#txtga41").val();
是不是alert(txtga91) //弹出空的,没有拿到值或者拿到空的
你弹出试下看有值没
@黄金鱼: 弹出来没有值,奇怪了,我明明输入了值呀,见鬼了,
我输入的是 <asp:TextBox ID="txtga91" runat="server" Width="200px"></asp:TextBox>,为什么获取不到值呢
@黄金鱼: 我发现了一个问题,$("#txtga91").val() 是有值的,但是 var txtga91=$("#txtga91").val();
txtga91是没有值的,
@zhengyingcan: 有点怪,难道是服务器控件自动提交后清空了数据,变量名改成其他名称试下
@zhengyingcan: 还可以使用HTML控件避免服务器控件自动提交
<input ID="txtga91" runat="server" Width="200px"/>
@zhengyingcan: jquery不行可以使用js
先把txtga91、txtga95和txtga41转化成Number,转化方法例子var n = parsetInt("123");,服务器控件点击会刷新页面,尽量少用服务器控件。你可以把你这页的aspx文件代码贴到回复中,我看看。
使用Num(),將全數字字符串轉換為數字,再進行加減乘除。不過最后的結果可能要稍微處理一下,保留2位小數。