WEBROWSER打开“http://www.solomonbrothers.com/DiamondSearch.aspx”后,page=10WebBrowser1.Navigate2 "javascript:updateResults(" & page & ");", False没有翻到第10页WebBrowser1.document.All("ctl00$ContentPlaceHolder$ProductPagerTop$PageSize").Value = 60也没有实现每页显示60条记录

解决方案 »

  1.   

    选择了某个checkbox之后,把这个元素对象内的call执行一次,页面才会随之刷新比如你给的网页代码
    <select name="ctl00$ContentPlaceHolder$ProductPagerTop$PageSize" id="ctl00_ContentPlaceHolder_ProductPagerTop_PageSize" onchange="ResetPageIndex('ctl00_ContentPlaceHolder_ProductPagerTop_PageIndex'); OnLoadRecords('ctl00_ContentPlaceHolder_ProductPagerTop', 'ctl00_ContentPlaceHolder_ProductPagerTop_PageSize', 'ctl00_ContentPlaceHolder_ProductPagerTop_PageIndex');">dim x
    set x = webbrowser.document.getelementbyid("ctl00_ContentPlaceHolder_ProductPagerTop_PageSize")
    x.selected=true
    call x.onchange
      

  2.   

    错了 刚才没仔细看 这是个select元素
    刚才那个代码是用在checkbox元素的select元素这么用:dim x 
    set x = webbrowser.document.getelementbyid("ctl00_ContentPlaceHolder_ProductPagerTop_PageSize") 
    x.item(1).selected=true '这里的1就是你要的60条每页,combo好理解吧?这个combo的listindex
    call x.onchange 
      

  3.   

    呃item(2)才是60/页
    我粗心惯了,凑合看吧
    给你发个我测试好的代码,你要的两个问题都在里面添加command1,command2,command3,webbrowser四个控件,
    按command1是选一个形状,按command1是60/页,按command2是跳到第10页
    Private Sub Command1_Click()
    Dim x
    Set x = WebBrowser1.Document.getelementbyid("ctl00_ContentPlaceHolder_ctl06_0")
    x.Checked = True '用checkbox选一个形状,我选的round
    Call x.onclick
    End SubPrivate Sub Command2_Click()
    Dim x
    Set x = WebBrowser1.Document.getelementbyid("ctl00_ContentPlaceHolder_ProductPagerTop_PageSize")
    x.Item(2).Selected = True '60条每页
    Call x.onchange
    End SubPrivate Sub Command3_Click()
    Dim x
    Set x = WebBrowser1.Document.getelementbyid("ctl00_ContentPlaceHolder_ProductPagerTop_PageIndex")
    'Call x.onchange
    x.Item(9).Selected = True '第10页
    Call x.onchange
    End SubPrivate Sub Form_Load()
    WebBrowser1.Navigate "http://www.solomonbrothers.com/DiamondSearch.aspx"
    End Sub看到了吧,其实所有的代码都是加上一个 call 对象.触发函数,checkbox是onclick,combo是onchange
      

  4.   

    2 是 显示60条记录 , 9 是第10 页,用用一个onchange 就可以    WebBrowser1.Document.all("ctl00_ContentPlaceHolder_ProductPagerTop_PageSize").selectedIndex = 2
        With WebBrowser1.Document.all("ctl00_ContentPlaceHolder_ProductPagerTop_PageIndex")
            .selectedIndex = 9
            .onchange
        End With
      

  5.   


    上面两次onchange其实我注释掉了一个 - -
    打多了,懒得删,就注释掉咯,只按一个键多好啊