2017-03-14 4 views

답변

0

질문이 조금 애매하지만 브라우저 수준 양식 필드 자동 완성을 사용하려는 것으로 생각됩니다. 이 질문과 같은 것 : Make text input fields remember previously entered data.

  • 필드 이름이 입력은 (당신이의 "이름"속성을 통해 입력 필드의 이름을 설정할 수 있습니다

    주요 캐치는 브라우저가 이러한 조건에서 필드 값에 대한 정보를 저장한다는 것입니다 UI5 sap.m.Input 컨트롤).

  • 포함 된 양식이 제출됩니다.

일반적으로 UI5에서는 양식을 제출하지 않습니다. 이는 AJAX가 아닌 데이터 전달 방법이기 때문입니다. 이 문제에 대한 해결책은 Trigger autocomplete without submitting a form입니다.

또는 값을 직접 입력 할 수 있습니다. 예 : localStorage를 사용하여 sap.m.Input의 suggestionItems 집계를 채 웁니다.

+0

로컬 스토리지를 사용하여 내 문제를 해결했습니다 ... 감사 ... –

0

브라우저의 기록에 액세스하려면 window.history를 사용하는 것이 좋습니다. 그러나 window.history는 보안상의 이유로 다양한 URL을 볼 수 없습니다. 역사의 API가 아니라 여기에 예제와 함께 설명되어

: https://developer.mozilla.org/en-US/docs/Web/API/History_API

그러나 경우, 당신은 당신이 모델에 대한 제안 사항 사용하고자하는 URL을 저장할 수 있습니다, 당신은 제안 window.history 실행하고 간단한 사용을 방지 할 수 있습니다 입력 필드의 기능 이 샘플은 여기에서 제공됩니다. https://sapui5.hana.ondemand.com/explored.html#/sample/sap.m.sample.InputSuggestionsCustomFilter/preview

0
LocalCacheSettings: function(){ 

      var aSelectedTokens = this.getView().byId("processOrderNo").getTokens(); 
      var aModelData = []; 
      for(var i = 0; i < aSelectedTokens.length ; i++){ 
       aModelData.push({ 
        "key" : i.toString(), 
        "value" : aSelectedTokens[i].getText() 
       }); 
     jQuery.sap.storage(jQuery.sap.storage.Type.local).put("myLocalData", aModelData); 


     } 
      this.aProcessOrderTyped = []; 
      var oLocalCacheModel = new sap.ui.model.json.JSONModel(); 
      jQuery.sap.require("jquery.sap.storage"); 
      var oStorage = jQuery.sap.storage(jQuery.sap.storage.Type.local); 
      //this.aProcessOrderTyped; 
      if(oStorage.get("myLocalData")){ 
       this.aProcessOrderTyped = oStorage.get("myLocalData"); 
       oLocalCacheModel.setData(this.aProcessOrderTyped); 
      } 
      this.getView().setModel(oLocalCacheModel, "POModel");