2016-03-02 40 views
0

有沒有辦法在調用文件(.doc)上的window.open()時將url參數傳遞給web服務器?當打開一個文件w/window.open()(從ColdFusion頁面)時傳遞url參數

我的問題是,當我打電話給window.open從javascript函數打開一個文件(c :)時,向(coldfusion)web服務器發送一個請求以重新加載當前頁面(這是很奇怪的b /三我甚至不使用提交類型的輸入):

viewAttachments.cfm

function viewFile(selectbox) { 
    var selItem = selectbox.options[selectbox.selectedIndex].text; 
    var selValue = selectbox.options[selectbox.selectedIndex].value; 
    var filePath = selValue + '\\' + selItem; 
    window.open(filePath); 
} 

<cfform name="gridForm" method="post"> 
<table> 
    <tr><td> 
     <cfset destination = expandPath("./cold_case_files")> 
     <cfdirectory directory="#destination#" action="list" name="fileList" type="file" > 
     <select id="fileName" name="fileName"> 
      <cfoutput> 
       <cfloop query="fileList"> 
        <option value="#directory#" >#fileList.Name#</option> 
       </cfloop> 
      </cfoutput> 
     </select> 
    </td></tr> 
    <tr><td> 
     <input type="image" src="btn.jpg" name="view" onClick="viewFile(fileName);return false;" /> 
    </td></tr> 
</table> 
</cfform> 

這是一個問題的b/C有整個文檔的URL參數(ColdFusion的引用傳入當第一次加載頁面時),這導致「URL參數未找到」異常:

var ProjID = <cfoutput>#url.ProjID#</cfoutput>; 

我試圖調用window.open用了name參數的各個值,以防止viewAttachments.cfm從重裝:

window.open(URL,名稱,規格,替換)

  • _blank - URL被加載到一個新的窗口。這是默認
  • _parent - URL被加載到父框架
  • _self - URL替換當前頁面
  • _top - URL替換可裝載

所以我的兩個選項中的任何框架集要麼在window.open()被觸發時阻止調用頁面重新加載,要麼找出如何將url參數傳遞給調用。

真奇怪的是,該頁面在我從中複製代碼的生產站點上工作。高層告訴我,這不是一個Web服務器配置或應用程序設置問題,所以我不知所措。

Gratzi。

+1

哦,也許我需要擺脫'method =「post」'語句。 – samosaris

+0

...沒有工作,仍然由於某種原因發佈... – samosaris

+0

什麼是'文件名'在'onClick =「viewFile(文件名);'? – guest271314

回答

1

(從評論...)

你傳遞一個物理文件的路徑,即c:\path\someFile.docx。相反,您需要使用指向服務器上該文件的URL,即http://yourserver/path/to/someFile.docx

至於原來的代碼,如果它工作,我會感到驚訝。並非所有瀏覽器都支持訪問本地文件。那些做usually require special permissions and syntax,即"file:///....,這是代碼沒有使用的。 (注意:HTML5功能不同)。反正這些文件不是本地。它們位於CF服務器上。但是,瀏覽器會在本地客戶端計算機上查找。所以它幾乎總是會失敗。除非你可能在瀏覽器中打開那個頁面 - 在CF服務器本身 - 你的普通用戶顯然不能這樣做;-)

+0

我也不知道利。我所能說的是,主有時以神祕的方式工作(我確實考慮過在某些時候做這件事,但更擔心做出任何改變。) – samosaris

相關問題