JavaScript数组赋值的问题
发布网友
发布时间:2022-04-22 17:32
我来回答
共4个回答
热心网友
时间:2022-04-25 02:42
var narray = [];
var k = <%= ntmp %>;
var v0 = '<%= rs(0) %>';
var v1 = '<%= rs(1) %>';
narray[k] = [v0, v1];
以上 <%= 和 %> 中间的值,注意引号分号等特殊字符,如果有,服务器端的代码得处理一下。
ASP不能用VB的StrConv函数,但也有解决办法,以下是从网上找到的:
<%
Const vbFromUnicode = 128
Const vbUnicode = 64
Public function StrConv(ByRef stringData, ByRef conversion)
Dim Stream
Set Stream = Server.CreateObject("ADODB.Stream")
' Charsets
' Windows-1252
' Windows-1257
' UTF-8
' UTF-7
' ASCII
' X-ANSI
Const UnicodeCharaset = "Windows-1252"
Const BinaryCharset = "X-ANSI"
Select Case conversion
Case vbFromUnicode
' Converts a Unicode String To Ascii
With Stream
.Charset = UnicodeCharaset
.Type = adTypeText
.Open
.WriteText stringData
.Position = 0
.Charset = BinaryCharset
.Type = adTypeBinary
StrConv = MidB(.Read, 1)
End With
Case vbUnicode
' Converts an Ascii String To Unicode
Dim Length
Dim Buffer
if TypeName(stringData) = "Null" Then
CStrU = ""
Exit function
End if
stringData = MidB(stringData, 1)
Length = LenB(stringData)
Dim Rs
Set Rs = Server.CreateObject("ADODB.Recordset")
Call Rs.Fields.Append("BinaryData", adLongVarBinary, Length)
Rs.Open
Rs.AddNew
Rs.Fields("BinaryData").AppendChunk(stringData & ChrB(0))
Rs.Update
Buffer = Rs.Fields("BinaryData").GetChunk(Length)
Rs.Close
Set Rs = Nothing
With Stream
.Charset = BinaryCharset
.Type = adTypeBinary
.Open
Call .Write(Buffer)
.Position = 0
.Type = adTypeText
.Charset = UnicodeCharaset
End With
StrConv = Stream.ReadText(-1)
End Select
Stream.Close
Set Stream = Nothing
End function
%>
热心网友
时间:2022-04-25 04:00
一:看你的rs(0)和rs(1)的值有没有含换行符,有换行符的话没有办法解决的,你必须用ASP代码把换行符替换了再输出才行;
二:如果<%=ntmp%>的值不是数字则要在两端加上引号;
三:再不行直接输出看看rs(0)的值是什么?注意不要在<script></script>之间输出。
热心网友
时间:2022-04-25 05:35
ntmp是什么?
不需要给定数组的长度啊。
var arr = ['abc',234];
数组直接这样赋值就可以了,里面放任意个任意类型的对象。
没关系的。你数组初始化给[]里加数干啥呢,像上面那样就可以了。试试吧
热心网友
时间:2022-04-25 07:26
用left不能控制长度么?? 可以吧。。。