form表單的target屬性

一 表單提交到了哪裏?php

  咱們都知道表單提交到服務器,java,php,asp等服務器,而後由服務器去讀。那麼以後呢,服務器總要返回點什麼吧,要麼返回 一個xml或json數據,要麼返回一個頁面,要麼返回一個頁面片斷,可是返回到哪裏了,這些結果在哪裏展現?其實這就是經常被忽略的一個問題,尤爲是 ajax用多了,以爲無刷新是理所固然的。在默認狀況下,在什麼頁面提交的,就會將返回的數據(json或頁面或頁面片斷)給這個頁面。這裏的頁面指一個 框架,帶有<html></html>結構的html頁。html

      這樣一來,當在A頁面提交了一個表單,服務器返回了 一個信息,表示成功了,此時,返回的數據會給A頁面,因而,A頁面就"刷新"了一次。2005年,出現了異步刷新ajax。這樣就能夠「局部刷新」了,向 服務器提交數據時,不用經過表單了,能夠經過瀏覽器對象來提交,服務器返回數據到該瀏覽器對象,這樣即可以實現「局部刷新」了。java

      可是ajax有個致命問題,不能提交文件。怎麼辦?上傳圖片不能異步請求了 。。。ajax

二 文件還得用表單來提交json

      爲了克服ajax不能提交文件的問題,咱們又想起了表單。當表單的enctype=multipart/form-data時,就能夠上傳文件了。但是這樣又須要整個頁面刷新,問題來了,兩個難以同時知足。瀏覽器

      方法老是有的。因而出現了經過設置表單的target=xxxxIframe的方法。這樣意味着表單提交到一個無關的頁面,服務器返回時也返回到這個頁 面,再在這個無關的頁面進行js操做,改變須要更新的頁面區域。而整個表單提交過程當中,無關頁面都是隱藏的,是個幕後推手。這就是 target=xxxxIframe的做用。服務器

三 target屬性框架

      target完整的屬性可能值是:異步

      _self:默認值,在原頁面打開。orm

      _blank:在新窗口打開。

      _parent:在父窗口打開。

      _top:在頂級窗口打開。

      _frameName(xxxxIframe):在指定窗口打開。

相關文章
相關標籤/搜索