C# div由js动态生成,div里面的文本应该如何传值?

oShirt1 2016-06-01 01:04:52


问了好多帖子,到现在才发现自己之前的问题实在是不够准确。

今天重新看了一下,

登陆进入网页后,由左右两边div组成,左边是菜单栏,点击后显示在右边div里面...


看了一下网页代码,是点击后才生成的页面,也就是实际上要登入我要传值的页面必须点击2次按钮,通过JS生成页面

如:点击菜单栏--显示出右边div--div里面点击一个按钮后生成一个最终页面,现在需要给最终页的文本框赋值..应该怎么操作?




如图步骤是这样的,并且我发现网页里面居然有最终页的网址,而且没有验证....也就是我只要在webbrower登陆之后就可以直接访问到最终页面。。

但是通过webbrower.document.all 或者GetElementById的方法都会报错。。。



真的不知道怎么做了

求帮忙!!!应该如何解决这种问题?

小白真的没办法了..
...全文
262 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
oShirt1 2016-06-02
  • 打赏
  • 举报
回复
引用 2 楼 qq_28677399 的回复:
深深的出卖了你
出卖我什么了...
oShirt1 2016-06-02
  • 打赏
  • 举报
回复
引用 1 楼 FoxDave 的回复:
你确定是点了之后才生成的?
也有可能不是....因为在网页源码里面我可以找到这个文本框,也可以找到他的ID,但是就是不能填值,这是为啥?
oShirt1 2016-06-02
  • 打赏
  • 举报
回复
引用 1 楼 FoxDave 的回复:
你确定是点了之后才生成的?
甚至登陆后我都可以直接访问那个div的网址,但是从webbrower中我没办法获取到那个文本框的ID,一直提示错误。
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace 网页填表测试
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
       
        private void btn_OpenLogin_Click(object sender, EventArgs e)
        {
            webBrw_Html.Navigate(new Uri("网址"));
        }

        private void btn_Insert_Click(object sender, EventArgs e)
        {
            try
            {
                MessageBox.Show(webBrw_Html.Url.ToString());
            }
            catch
            {

            }
                //框架名:mrightFrame //ctl00_ContentPlaceHolder1_Login1_txtUsr//txtTitle
            try
            {
                
               // tbUserid.SetAttribute("value", "汪汪汪");

                //webBrowser1.Document.Window.Frames["mrightFrame"].Document.GetElementById("txtTitle").SetAttribute("value", "1234");
                webBrowser1.Document.All["Mothername"].SetAttribute("value", "王王王");
               // webBrowser1.Document.Forms["Mothername"].GetElementsByTagName("ctl00_ContentPlaceHolder1_Login1_txtUsr")[0].InnerText = "pns";
                webBrowser1.Document.All["Mothername"].SetAttribute("value", "王王王");
                webBrowser1.Document.All["Mothername"].SetAttribute("value", "王王王");
                webBrowser1.Document.GetElementById("Mothername").SetAttribute("value", "王王王");
            }
                
            catch (Exception ex)
            {
                MessageBox.Show(ex.ToString());
            }
        }

        private void webBrw_Html_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
        {
            if (e.Url.ToString() == "网址")//检测当前网址是否是正确网址
            {
                MessageBox.Show("正确");
                webBrowser1.Visible = true;
                webBrowser1.Navigate("网址");
            }
        }

        private void button1_Click(object sender, EventArgs e)//直接访问div网址
        {
            webBrw_Html.Navigate(new Uri("网址"));
        }

    }
}
Justin-Liu 2016-06-01
  • 打赏
  • 举报
回复
你确定是点了之后才生成的?
ASPSPY 2016-06-01
  • 打赏
  • 举报
回复
深深的出卖了你

111,129

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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