我公司客户在更新过微软近期发布的KB974455和KB971961补丁包后,所有原来使用接收端:
<script>
         id = window.showModalDialog('test.jsp');
</script>对话框:
<vbscript>
Sub test()
window.returnvalue = Array(1,2,3,4);//在执行到这里的时候报类型不匹配的错误,导致接收端无法接受返回值
window.close
End Sub
</script>
大侠们研究一下啊!!!!

解决方案 »

  1.   

    Hi,I think I have the same problem... can't speak Chinese though :)Can you help?<SCRIPT language=vbscript event=onclick for=AddLangs>
    Dim table, table_IDfield, table_field, ID
    table = "Components_languages"
    table_IDfield = "Component_ID"
    table_field = "Language"
    ID = window.dialogarguments    dim fResync
    fResync = showModalDialog("new_langs.htm", Array (table, table_IDfield, table_field, ID) ,"dialogHeight: 350px; dialogWidth: 510px; center: yes; resizable: no; status: no;")    If (fResync = "true") Then 
        MSODSC.RefreshJetCache
    MSODSC.DataPages(0).Requery
        End If
    </SCRIPT>
      

  2.   

    It's easy to handle this problem. Because the WINDOW.RETURNVALUE variant can't support Array type. Although you can use it before, it just an old bug of IE explanation. 
    From the MSDN it clearly showed that the object can only return a value not a array.
      

  3.   

    You can return only a ID value to the parent frame. and run some AJAX code to get the detail data from the server.
      

  4.   

    我们现在考虑不用vbscript改用 javascript
    function btnclear_onclick(){
        var resultArray = new Array();
        resultArray[0]= "0";
        resultArray[1]= "";
        window.parent.returnValue=resultArray;
        dialogClose(); 
    }
    看看你们也能这么改不?
      

  5.   

    我下了个IEtester,用IE6就没事了