try
------------------------------------
<script type="text/javascript">
function calc(){
var price = document.getElementsByName("price1")[0];
var maoLi = document.getElementsByName("mao_li")[0];
var sprice = document.getElementsByName("price2")[0];
if(price.value!="" && maoLi.value!=""){
sprice.value=1.17 * price.value/(1-maoLi.value);
}
if(price.value!="" && sprice.value!=""){
maoLi.value=1- price.value/sprice.value*1.17;
}
}
</script>成本价:<input name="price1" type="text" size="10" onchange="calc();"> <br>
毛利率:<input name="mao_li" type="text" size="10" onchange="calc();"> <br>
销售价:<input name="price2" type="text" size="10" onchange="calc();"> <br>
------------------------------------
<script type="text/javascript">
function calc(){
var price = document.getElementsByName("price1")[0];
var maoLi = document.getElementsByName("mao_li")[0];
var sprice = document.getElementsByName("price2")[0];
if(price.value!="" && maoLi.value!=""){
sprice.value=1.17 * price.value/(1-maoLi.value);
}
if(price.value!="" && sprice.value!=""){
maoLi.value=1- price.value/sprice.value*1.17;
}
}
</script>成本价:<input name="price1" type="text" size="10" onchange="calc();"> <br>
毛利率:<input name="mao_li" type="text" size="10" onchange="calc();"> <br>
销售价:<input name="price2" type="text" size="10" onchange="calc();"> <br>
function doMath(n)
{
var p2 = mathe.price2.value;
var p1 = mathe.price1.value;
var m1 = mathe.mao_li.value;
if(n == 'price2' && p1 != '' && m1 != '')
{ mathe.price2.value = (p1/(1-m1))*1.17;
return true;
}
else if(n == 'mao_li' && p1!= '' && p2 != '')
{
mathe.mao_li.value = 1-p1/(p2/1.17);
return true;
}
else return false;
}<form name="mathe" method="POST">
成本价:<input name="price1" type="text" size="10"> <br>
毛利率:<input name="mao_li" type="text" size="10" onClick="doMath(this.name)"> <br>
销售价:<input name="price2" type="text" size="10" onClick="doMath(this.name)"> <br>
<form>
在文本框里写个onmouseover事件
<head>
<script>
function init()
{
//销售价=[成本价/(1-毛利率)]*1.17
//
//1、当用户输入成本价和毛利率后,鼠标移到销售价文本框时,用JS功能自动计算并显示出销售价。 //2、当用户输入成本价和销售价后,鼠标移到毛利率文本框时,用JS功能自动计算并显示出毛利率。
document.onmouseover = resualt;
}
function resualt()
{
var obj = event.srcElement;
var cb_txt = document.getElementById("price1");
var ml_txt = document.getElementById("mao_li");
var xs_txt = document.getElementById("price2");
if ( obj.tagName == "INPUT" && obj.id == "price2")
{ // 计算销售价
if ( cb_txt.value != "" && ml_txt.value !="" )
{
obj.value = xiaoshoujia();
}
}
if ( obj.tagName == "INPUT" && obj.id == "mao_li")
{ // 计算销售价
if ( cb_txt.value != "" && xs_txt.value !="" )
{
obj.value = maoli();
}
}
}
function xiaoshoujia()
{
var cb_txt = document.getElementById("price1");
var ml_txt = document.getElementById("mao_li");
var ret = "";
if ( validata(cb_txt)&&validata(ml_txt) )
{
ret = (cb_txt.value/(1-ml_txt.value))*1.17;
}
return ret;
}
function maoli()
{
var cb_txt = document.getElementById("price1");
var xs_txt = document.getElementById("price2");
var ret = "";
if ( validata(cb_txt)&&validata(xs_txt) )
{
ret = 1-((cb_txt.value*1.17)/xs_txt.value);
}
return ret;
}
function validata(obj)
{
// 只能输入数字,精确小数点后四位
var value = obj.value;
var blRet = true;
if (value.search(/^[0-9]{1,14}[.]{0,1}[0-9]{0,20}$/)==-1)
{
alert("非法数字,请重新填写");
obj.value = "";
obj.focus();
blRet = true;
}
return blRet;
}</script>
</head>
<body onLoad="init()">
成本价:<input id="price1" type="text" size="10"> <br>
毛利率:<input id="mao_li" type="text" size="10"> <br>
销售价:<input id="price2" type="text" size="10"> <br>
</body>
</html>
我做一个简单的例子,希望对你有帮助