需要語(yǔ)句作為參數(shù)傳遞給Execute語(yǔ)句的字符串無(wú)法被解析為一個(gè)語(yǔ)句。Execute語(yǔ)句不能被用來(lái)動(dòng)態(tài)執(zhí)行VBScript代碼。例如,考慮如下的 VBScript代碼。 Execute "msgbox 1" ' 因?yàn)?CODE>msgbox是一個(gè)語(yǔ)句,所以有效。
Execute "5*4" ' 由于5*4 無(wú)法被解釋為一個(gè)語(yǔ)句所以失敗。
不僅僅是Execute和Eval ,在任何需要一個(gè)語(yǔ)句的腳本代碼的編譯過(guò)程中也產(chǎn)生Expected statement錯(cuò)誤。例如,如下代碼在Internet Explorer 中造成這個(gè)錯(cuò)誤, <html>
<script language=vbscript>
5*4
</script>
</html>
注意這里有兩個(gè)在VBScript中不同且無(wú)關(guān)的語(yǔ)句,
- 編譯并執(zhí)行不工作語(yǔ)句的Execute語(yǔ)句,
- Execute 方法.
要糾正該錯(cuò)誤 - 確保傳遞給Execute 語(yǔ)句的字符串為一個(gè)語(yǔ)句。
- 如果要求值的字符串為一個(gè)表達(dá)式,使用Eval。
請(qǐng)參閱Execute 語(yǔ)句 | Eval 返回首頁(yè)
|