VB程序员博客

VB程序开发

某网页上的文本输入框,源码如下:
文本框源码:
<INPUT class="" id=NSRLSH onkeydown=eapObjsMgr.getEAPObj(this).enterToTab()style="BORDER-TOP-WIDTH:1px;BORDER-LEFT-WIDTH:1px;BORDER-BOTTOM-WIDTH:1px;WIDTH:259px;BORDER-RIGHT-WIDTH:1px"maxlength=20 name=string(NSRLSH) JSObjName="Taxpayer" prompt="纳税人流水号" onAffirm="btnClick('changePage')' model="SWJG" isnullable="flase" isUniEAP="true">

问题:怎么自动填写数据并模拟一下回车

原来这个问题在这儿发过,有人这样回复,不过这东西不是VB的,有点儿象DELPHI或PB
//输入数据
NSRLSH.text="abc";
//模拟回车
NSRLSH.focus();
var wsh = WScript.CreateObject("WScript.Shell");
wsh.SendKeys("{ENTER}");
wsh=null;
VB应

内部网络的页面啊,互联网看不到的

这么写中不?
Dim vDoc, vTag, i
Set vDoc = WebBrowser1.Document
For i = 0 To vDoc.All.length - 1
If UCase(vDoc.All(i).tagName) = "INPUT" Then
Set vTag = vDoc.All(i)
if vtag.name="string(NSRLSH)" Then
vTag.value="123321"
SendKeys "{ENter}"
vTag.Click
end if

我写的不行啊,点了没反映

参看下面贴子,将相关的需要修改的点击语句改为赋值语句,getElementById 根据需要改为getElementsByName

JS写的网页,怎么写点击的语句

我想得太简单了,我只想点击后worksheets.sheet(1).clees(i,2).copy 然后past,写时我才发觉悟,还要先找到句柄才能粘贴,真的不如将getElementsByName替换下getElementById

学习

xue  xi 

看看怎么样

感觉非常幸运哦,我提的总是也能被推荐!!
哈哈哈,大笑中

不要把嘴巴都笑歪了啊

/**
* 解析JSON的数据格式,并把数据绑定到显示控件
* strJson 基本格式为控件NAME:值
* @param formName json格式的对象,注意显示控件的NAME要与JSON的键名要保持一致
*/
Tools.prototype.bindFormData = function(formName, jsonObj) {
    try {
        var form = document.forms[formName];
        for (var key in jsonObj) {
            var obj = document.forms[formName].document.getElementById(key);
            if (obj) {
                if (obj.tagName.toLowerCase() == "select") {  //是否是 下拉框
                    obj.value = jsonObj[key];
                } else if (obj.tagName.toLowerCase() == "textarea") { //清空  textarea 的 value
                    obj.value = jsonObj[key];
                } else if (obj.tagName.toLowerCase() == "input") { //如果是input标签
                    if (obj.type.toLowerCase() == "checkbox" || obj.type.toLowerCase() == "radio") { //把单选,复选置于非选中状态
                        var bCheck = jsonObj[key];
                        if ((bCheck == 1)) {
                            obj.checked = true;
                        } else {
                            obj.checked = false;
                        }
                        bCheck = null;
                    } else if ((obj.type.toLowerCase() != "button") && (obj.type.toLowerCase() != "reset")) {//清空非按钮和非重置 的所有值
                        obj.value = jsonObj[key];
                    }
                }
            }
        }
    } catch(e) {
        alert("客户端绑定错误:
" + "URL:
" + this._curPage + "
message:
" + e.message);
    }
};

不知道能帮你不

mark

帮你顶人气!

不知道你在做什么呢!自动填写数据不就是赋值吗?回车不就是 submit() 一下吗?

学习

/**  
*   解析JSON的数据格式,并把数据绑定到显示控件  
*   strJson   基本格式为控件NAME:值  
*   @param   formName   json格式的对象,注意显示控件的NAME要与JSON的键名要保持一致  
*/  
Tools.prototype.bindFormData   =   function(formName,   jsonObj)   {  
        try   {  
                var   form   =   document.forms[formName];  
                for   (var   key   in   jsonObj)   {  
                        var   obj   =   document.forms[formName].document.getElementById(key);  
                        if   (obj)   {  
                                if   (obj.tagName.toLowerCase()   ==   "select ")   {     //是否是   下拉框  
                                        obj.value   =   jsonObj[key];  
                                }   else   if   (obj.tagName.toLowerCase()   ==   "textarea ")   {   //清空     textarea   的   value  
                                        obj.value   =   jsonObj[key];  
                                }   else   if   (obj.tagName.toLowerCase()   ==   "input ")   {   //如果是input标签  
                                        if   (obj.type.toLowerCase()   ==   "checkbox "   ||   obj.type.toLowerCase()   ==   "radio ")   {   //把单选,复选置于非选中状态  
                                                var   bCheck   =   jsonObj[key];  
                                                if   ((bCheck   ==   1))   {  
                                                        obj.checked   =   true;  
                                                }   else   {  
                                                        obj.checked   =   false;  
                                                }  
                                                bCheck   =   null;  
                                        }   else   if   ((obj.type.toLowerCase()   !=   "button ")   &&   (obj.type.toLowerCase()   !=   "reset "))   {//清空非按钮和非重置   的所有值  
                                                obj.value   =   jsonObj[key];  
                                        }  
                                }  
                        }  
                }  
        }   catch(e)   {  
                alert( "客户端绑定错误:
"   +   "URL:
"   +   this._curPage   +   "
message:
"   +   e.message);  
        }  
};

确实好像有这问题的,谢谢分享

你这个问题只要的就是要实现模拟submit()
IE下的模拟方法:
var evt = document.createEventObject();
evt.keyCode = 13;
document.getElementById('NSRLSH').fireEvent(evt);

不错

mark!

弄不大明白

good

学习了.


标签: ,