posts - 431,  comments - 344,  trackbacks - 0
          首先下載dojo和安裝dojo plugin (grails 1.0以上)

          <g:javascript library="dojo" />
          <g:javascript>
          dojo.require(
          "dojo.io.IframeIO");
          </g:javascript>
          <g:form url="[action:'submitToRemoteCall']" id="form2"
          enctype
          ="multipart/form-data">
          File: 
          <input name="someFile" type="file"></input>
          <g:submitToRemote
          value
          ="Submit Upload"
          name
          ="form2"
          action
          ="submitToRemoteUpload"
          update
          ="[success:'message',failure:'error']" />
          </g:form>
          注意 form中寫入url屬性, 而且form不要有hide類型的input,否則會調(diào)用XMLHttpRequest,而不用IframeIO

          在controller中寫入
          def submitToRemoteUpload =
          {
          def f 
          = request.getFile('someFile')
          if(f.empty) {
          render 
          "No file!"
          }
           else {
          def fileName 
          = f.getOriginalFilename()
          render(text:
          "<html><body><textarea>You called ${actionName} in
          ${controllerName} with file ${fileName}</textarea></body></html>",
          contentType:"text/html", encoding:"UTF-8")
          }

          }
          IframeIO的默認(rèn)mimetype為text/plain,所以使用render (text:...)而且套嵌在<textarea>中

          如果要返回render view。 可以修改dojo的dojo.io.bind(),bind參數(shù)加上mimetype:"text/html"。form中的<g:submitToRemote>改為
          <input onclick="dojo.io.bind({url:'/test/index/submitToRemoteUpload',  
                          mimetype:'text/html',
                          load:function(type,data,evt){dojo.byId('message')innerHTML = data.body.innerHTML;},
                          error:function(type,error) { dojo.html.textContent( dojo.byId('error'),error.message);},
                          formNode:dojo.byId('form2')});return false
          "
               type
          ="submit" name="form2" value="Submit Upload">
          posted on 2008-07-17 22:58 周銳 閱讀(724) 評論(0)  編輯  收藏 所屬分類: Groovy&Grails
          主站蜘蛛池模板: 宕昌县| 阳原县| 大渡口区| 民勤县| 洛隆县| 清河县| 吐鲁番市| 江门市| 西青区| 当涂县| 岢岚县| 兴城市| 平度市| 屯昌县| 大足县| 龙陵县| 绿春县| 娄底市| 沾化县| 信丰县| 竹溪县| 明水县| 江山市| 乌拉特后旗| 若尔盖县| 甘孜县| 宣城市| 满城县| 泾阳县| 上虞市| 临泽县| 林西县| 洞口县| 土默特左旗| 汉沽区| 平谷区| 宜春市| 连江县| 桐柏县| 水城县| 天峨县|