簡體   English   中英

清除vb.net項目vs2008上的文本字段

[英]Clearing text fields on vb.net project vs2008

摘要:網頁上有一些字段,允許用戶輸入付款。 系統處理完付款后,未清除這些字段。 所以我的任務是簡單地清除它們。 這是幾行代碼:

' first insert the transaction
InsertANewTransaction()

'clear out the values
txtAddTransAmount.Text = ""
ddlAddTransTypes.SelectedIndex = -1
txtComment.Text = ""

' then create and print the receipt
Payment2MsWordDoc(Payment, PaymentType, PreviousBalance, NewBalance, DueDate, ProjMinPayment)

我在中間添加了三行以重置值。 問題是,它們不會重置。 罪魁禍首是對Payment2MsWordDoc過程的文件行進行一些調試:

Response.AppendHeader("Content-Type", "application/msword")
Response.AppendHeader("Content-disposition", "attachment; filename=" + fileName)
Response.Write(strBody)

該過程是將HTML收據寫入strBody並將其顯示給用戶。 他們會看到“文件下載,您要打開還是保存此文件...。”並可以以ms字打開收據。 如果沒有這三行,則重置將起作用。 很明顯,他們正在弄亂某些東西,我只是不明白什么。

我有一個解決方法,但是我想知道發生了什么。 甚至可以說這是創建/下載文檔的正確方法。 這在一個繼承的系統中,原來的設計師早已不復存在。 我在VB或Web應用程序方面都不強,因此對於問題出在哪里一無所知。

想象一下,您在網頁上有一個文本區域,然后有一個指向該文件下方的word文檔的常規超鏈接。 如果鍵入文本區域,然后單擊鏈接,您是否希望文本區域清除? 不,瀏覽器將只啟動word文檔,並按原樣保留頁面。 您的表單也發生了同樣的事情。 提交后,服務器僅發送Word文檔,並且由於服務器未發送任何新的HTML,因此瀏覽器保持原樣。 您從文本字段中清除的所有內容都沒有關系,因為新狀態永遠不會被發送出去。 您需要做的是向瀏覽器發送新的HTML,而不是doc這個詞。 在新的HTML中,您可以包括指向文檔doc或更好的下載鏈接的元重定向。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM