当前位置:编程学习 > VB >>

VB提交表单乱码

使用WebBrowser做了一个提交表单,由于textarea文本区是中文,在提交给a.asp时,是乱码,请教诸位如何解决提交中文乱码问题?
Function aa() As Boolean

aa = False

Web1.Document.body.innerHtml = "<form method=post name=tjbb action="a.asp><textarea name='str'>" & Text1 _
& "</textarea>" & "<input type='text' name='bd' value='" & text2 _
& "'></form>"
Do Until Web1.ReadyState = READYSTATE_COMPLETE
  DoEvents
Loop

Web1.Document.Forms("tjbb").Submit

While Web1.Busy
  Application.DoEvents
Wend

Debug.Print "*" & Web1.Document.body.innerText & "*"


If Web1.Document.body.innerText = "OK" Then aa=true

End Function

经过测试将以上放在网页环境不是乱码,使用如下方式也不是乱码
Web1.Navigate "a.asp?str=" & text1 & "&bd=" & text2    这种方式不是乱码


Web1.Navigate "a.asp",0,"str=" & text1 & "&bd=" & text2 ,"Content-Type: application/x-www-form-urlencoded" 也不是乱码


请大家分析一下是什么原因,以上乱码很奇怪,运行程序后首次提交是乱码,再次或多次继续提交就不是乱码,我试着用strconv转换,结果不行
--------------------编程问答-------------------- 终于搞定了 --------------------编程问答-------------------- 乱码问题解决了,但现在有个新问题, Web1.Document.body.innerText不能获取a.asp页面的文本,

比如上面提交时,text1="AAAAA",text2="BBB",只能获取提交页面的文本,即通过Web1.Document.body.innerText获取的是"AAAAA"和“BBB",但在此处设断点后,就可以获得如下返回文本,即我获取的不是时机,可能获取时提交页面还没有完全加载,我提交后想获得如下返回值 ,如何正确判断a.sp页面已经彻底加载完成

a.asp如下
<%

str=request("str")

bd=request("bd")

select case bd
case 1:x="OK"
case 0:X="NO"
case 2:x="abc"
case 3:x="edf"
'有很多返回值,这里不一一列出
select end

%>

使用Web1.Busy ,READYSTATE_COMPLETE判断不起作用,判断的不是a.aps成功还是忙,而是刚才提交的状态,DocumentComplete这个事件中无法判断,请大家在VB中测试一下,帮助找找原因 --------------------编程问答-------------------- a.asp如下
<%

str=request("str")

bd=request("bd")

select case bd
case 1:x="OK"
case 0:X="NO"
case 2:x="abc"
case 3:x="edf"
'有很多返回值,这里不一一列出
response.write x
select end

%>

--------------------编程问答-------------------- 如果仅仅是想通过访问asp来获得简单的输出,建议使用XMLHTTPRequest对象,或者用INET控件,不必要使用WEBBROWSER。不过使用INET控件,需要将获得的HTML源文件的<body></body>之外的东西去掉,才以得到body的innerText. --------------------编程问答-------------------- 因为我要使用WebBrowser POST 一个大数据,所以使用INET控件数据量大了可能不行, XMLHTTPRequest对象我没有使用过,不知是否能POST大数据
补充:VB ,  控件
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,