请教脚本和asp相互混用问题

vick791003 2004-04-08 08:53:48
大家好,我要在javascript中调用一个asp写的函数应该怎样搞啊,具体如下:

<script language="javascript">
<!--
document.form1.Specs.value=rmb(123)
-->
</script>

其中 document.form1.Specs.value是java脚本,rmb()是asp写的函数。我想要的效果是把rmb函数返回的值给document.form1.Specs.value
我应怎么搞啊,谢谢!
...全文
88 10 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
lhzyn 2004-04-08
  • 打赏
  • 举报
回复
我不懂js
是不是
参数是数字,如果是字符串要加引号
这个原因啊?
还有你的rmb()好象也可以在客户端实现,为什么不用js写一个呢?
vick791003 2004-04-08
  • 打赏
  • 举报
回复
Function rmb(num)
num = FormatNumber(num, 2)
Dim numList
Dim rmbList
Dim numLen
Dim numChar
Dim numstr
Dim n
Dim n1, n2
Dim hz
numList = "零壹贰叁肆伍陆柒捌玖"
rmbList = "分角元拾佰仟万拾佰仟亿拾佰仟万"
If num > 9999999999999.99 Then
rmb = "超出范围的人民币值"
Exit Function
End If
numstr = CStr(num * 100)
numLen = Len(numstr)
n = 1
Do While n <= numLen
numChar = CInt(Mid(numstr, n, 1))
n1 = Mid(numList, numChar + 1, 1)
n2 = Mid(rmbList, numLen - n + 1, 1)
If Not n1 = "零" Then
hz = hz + CStr(n1) + CStr(n2)
Else
If n2 = "亿" Or n2 = "万" Or n2 = "元" Or n1 = "零" Then
Do While Right(hz, 1) = "零"
hz = Left(hz, Len(hz) - 1)
Loop
End If
If (n2 = "亿" Or (n2 = "万" And Right(hz, 1) <> "亿") Or n2 = "元") Then
hz = hz + CStr(n2)
Else
If Left(Right(hz, 2), 1) = "零" Or Right(hz, 1) <> "亿" Then
hz = hz + n1
End If
End If
End If
n = n + 1
Loop
Do While Right(hz, 1) = "零"
hz = Left(hz, Len(hz) - 1)
Loop
If Right(hz, 1) = "元" Then
hz = hz + "整"
End If
rmb = hz
End Function



%>
vick791003 2004-04-08
  • 打赏
  • 举报
回复
<script language= "javascript " >
<!--


function js()
{
if (document.form1.Amount.value == " ")
alert( "数量不能为空! ");
if (document.form1.Price.value == " ")
alert( "单价不能为空! ")

if ((document.form1.Price.value != " ") && (document.form1.Amount.value != " "))
document.form1.SumPrice.value = document.form1.Price.value * document.form1.Amount.value
var aa=document.form1.SumPrice.value

document.form1.Specs.value= <%=rmb(1)%>;


}

-- >
</script >
vick791003 2004-04-08
  • 打赏
  • 举报
回复
<script language="javascript">
<!--


function js()
{
if (document.form1.Amount.value == "")
alert("数量不能为空!");
if (document.form1.Price.value == "")
alert("单价不能为空!")

if ((document.form1.Price.value != "") && (document.form1.Amount.value != ""))
document.form1.SumPrice.value = document.form1.Price.value * document.form1.Amount.value
var aa=document.form1.SumPrice.value

document.form1.Specs.value=aa;
<% =rmb(1)%>

}

-->
</script>

lhzyn 2004-04-08
  • 打赏
  • 举报
回复
把代码和报错贴出来大家看看,猜起来很费劲的:)
vick791003 2004-04-08
  • 打赏
  • 举报
回复
怎么回事啊????
zhongmao 2004-04-08
  • 打赏
  • 举报
回复
你的rmb()函数是怎么写的呢?
vick791003 2004-04-08
  • 打赏
  • 举报
回复
这样可以调用,但提示我rmb(123)返回的值未定义,怎么回事啊,谢谢!
zhongmao 2004-04-08
  • 打赏
  • 举报
回复
参数是数字,如果是字符串要加引号
<%
function rmb(a)
rmb = a * a
end function
%>
<script language="javascript">
<!--
document.form1.Specs.value=<%=rmb(123)%>
-->
</script>
lhzyn 2004-04-08
  • 打赏
  • 举报
回复
一个在服务器端运行,一个是在客户端运行,你那样不行把
试试这样
<script language="javascript">
<!--
document.form1.Specs.value=<%=rmb(123)%>
-->
</script>

28,409

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧