有人可以帮助我,找出为什么我的代码不起作用吗?
我的代码:
def return_errors(&block)
errors = []
block.call(errors) if block_given?
errors
end
我想将变量 subject =%protocol%,%LSN%,%site%,%requisition%发送到某些文本的t 他结束我的电子邮件中的主题字段。
但我有两个问题:
如何删除TD?
因此< TD> SP005 VIABLE,101999,C277,103484490 - 查询有差异的信息
为什么?
我认为以下代码会将变量发送到特定文本后面吗?
#b::
pwb := WBGet()
pTable:= pwb.document.GetElementsByTagName("Table") [4] ;outerHTML ;Set Tag name and Array value
Loop, % pTable.rows.length {
LSN:= pTable.rows[9] .GetElementsByTagName("TD") [1].outerHTML ; LSN
protocol:= pTable.rows[9] .GetElementsByTagName("TD") [3].outerHTML ; Protocol
Site:=pTable.rows[10] .GetElementsByTagName("TD") [1].outerHTML ; Site
Requisition:=pTable.rows[12] .GetElementsByTagName("TD") [3].outerHTML ; Requisition
subject= %protocol% , %LSN% , %site% , %Requisition%
;send the contents of subject into the subject of outlook
controlSend, RichEdit20WPT4, {end} , ahk_class rctrl_renwnd32 ;send to the end of the subject field
controlSendRaw, RichEdit20WPT4, %subject%, ahk_class rctrl_renwnd32 ; sent to the subject field
subject :="" ; empty the variable after process completed
return
} "
答案 0 :(得分:0)
而不是:
LSN := pTable.rows[9].GetElementsByTagName("TD")[1].outerHTML
尝试:
LSN := pTable.rows[9].GetElementsByTagName("TD")[1].innerText
如果这不起作用,您可以尝试StringReplace:
StringReplace, LSN, LSN, <TD>,, ALL
对于未将文字发送到文档的 End 的代码,请尝试ControlFocus,ControlClick和Sleep
;Set focus on Control
controlFocus, RichEdit20WPT4, ahk_class rctrl_renwnd32
;MouseClick on the Control, set the Caret!
controlClick, RichEdit20WPT4, ahk_class rctrl_renwnd32
;Pause for a millisecond
Sleep, 10
;Move Caret to end of document!
controlSend, RichEdit20WPT4, {end} , ahk_class rctrl_renwnd32
Sleep, 10
等。