delphi2007 教程

delphi2007 教程

首页 新随笔 联系 聚合 管理
  1013 Posts :: 0 Stories :: 28 Comments :: 0 Trackbacks
挑战高手智慧,如何取得InnerHTML里面的Element并赋值 Delphi / Windows SDK/API
http://www.delphi2007.net/DelphiNetwork/html/delphi_20061203153545210.html
目标网页内容摘要如下:  
   
  <script>  
  var   BookCode_str='识别码:<INPUT   name=BookCode   size=10   maxlength=4>请输入图书编码<br><img   id=Book_img   src="GenBookCode.asp?ID=DSFSCDSC008296CB84467F56B">';  
   
  function   MyOnFocus()  
  {  
          if(document.getElementById('BookC').innerHTML==null   ||   document.getElementById('BookC').innerHTML==''){  
                document.getElementById('BookC').innerHTML=BookCode_str;  
          }  
      }    
   
  </script>  
   
  <table   width="95%"   border="0"   cellspacing="1"   cellpadding="3"   align="center"   class="f9"   >  
  <tr   >    
  <td   valign="top"   nowap>书名:</td>  
  <td   width="90%">  
  <input   type="text"   name="BookName"   size="60"   value=""   onfocus="MyOnFocus()">  
  </td>  
  </tr>  
  <tr>    
  <td   valign="top"   nowap>简介:</td>  
  <td   width="90%">    
  <textarea   name="BookDetail"   cols="65"   rows="8"   onfocus="MyOnFocus()"></textarea>  
  </td>  
  </tr>  
   
  <tr>    
  <td   vAlign=middle   align=left   colspan=2><div   id=BookC></div></td>     //添加图书条形码  
  </tr>  
   
  <tr>    
  <td   width="93%">    
  <input   type="submit"   name="Submit3"   value="图书入库"></td>  
  </tr>  
   
  </table>  
   
   
  因为前面的开发人员走了,联系不上,所以存在这么一个问题:  
   
  图书的编码是必须   先点标题以后,才通过MyOnFocus,往ID为BookC的DIV里面插入一个   条形码图片  
   
  我现在编写程序,如何自动往新增加的ID为BookCode的Input赋值?  
   
   
  o   :=   WebBrowser_AddBook.oleobject.document.all.item('BookName',0);   //名称  
  o.value   :='书名';  
   
  o   :=   WebBrowser_AddBook.oleobject.document.all.item('BookDetail',0);   //简介  
  o.value   :='简介';  
     
  o   :=   WebBrowser_AddBook.oleobject.document.all.item('BookCode',0);     //出错  
  o.value   :='123456';  
   
  到给编码赋值的时候,立马出错。小弟只有100分了,故给出99分,请求各位大虾来救我!  
 

提前!!自己顶上去

//先把对象创建出来  
   
  var  
      o:   OleVariant;  
  begin  
      o   :=   WebBrowser_AddBook.OleObject.Document.All.Item('BookName',   0);   //名称  
      o.value   :='书名';  
      o   :=   WebBrowser_AddBook.OleObject.Document.All.Item('BookDetail',   0);   //简介  
      o.value   :='简介';  
      WebBrowser_AddBook.OleObject.Document.parentWindow.ExecScript('MyOnFocus()');   //<<  
      o   :=   WebBrowser_AddBook.OleObject.Document.All.Item('BookCode',   0);     //出错  
      o.value   :='123456';  
  end;  
 

zswang(伴水清清)(专家门诊清洁工)真的是专家哦!  
   
  基本解决问题。   不过存在一个小疑问:  
   
    WebBrowser_AddBook.OleObject.Document.parentWindow.ExecScript('MyOnFocus()');   //<<  
      o   :=   WebBrowser_AddBook.OleObject.Document.All.Item('BookCode',   0);     //出错  
      o.value   :='123456';  
   
  之后,我立马   submit,   没有问题。如果不这样,这个书的编码自动就变成空,不知道为何。  
   
   
  ————————————————另外,如何禁用网页代码里面的一个特定的Script?请教  
 

posted on 2009-03-02 11:34 delphi2007 阅读(445) 评论(0)  编辑 收藏 引用
只有注册用户登录后才能发表评论。