liucf преди 5 години
родител
ревизия
1efe7f2015
променени са 4 файла, в които са добавени 22 реда и са изтрити 15 реда
  1. 4 4
      src/common/components/Textarea/index.jsx
  2. 11 6
      src/components/MainSuit/index.jsx
  3. 6 4
      src/components/RadioInpDrop/index.jsx
  4. 1 1
      src/store/actions/currentIll.js

+ 4 - 4
src/common/components/Textarea/index.jsx

@@ -69,7 +69,7 @@ class Textarea extends Component {
         inpText:text.substr(0,config.limited),
         overFlag:true
       });
-      handleInput&&handleInput({text:text.substr(0,config.limited)});
+      handleInput&&handleInput({text:text.substr(0,config.limited).replace('<br>','')});
       return;
     }
     /*if(boxMark=='3'&&!hasMain){
@@ -81,8 +81,8 @@ class Textarea extends Component {
       overFlag:false
     })
 
-    //存值到store
-    handleInput&&handleInput({text});
+    //存值到store  FF26 会有一个<br>
+    handleInput&&handleInput({text:text.replace('<br>','')});
     //右侧推送--延时推送
     clearTimeout(stimer);
     let timer = setTimeout(function(){
@@ -103,7 +103,7 @@ class Textarea extends Component {
   }
   handleBlur(e){
     const {saveChronic} = this.props;
-    const text = e.target.innerText;
+    const text = e.target.innerText || e.target.innerHTML;
     getFeature(text).then((res)=>{
       if(res.data.code==0){
         const result = res.data.data;

+ 11 - 6
src/components/MainSuit/index.jsx

@@ -115,6 +115,9 @@ class MainSuit extends Component{
       return
     }
     if(datas.length==0){//没有使用模板时点击搜索结构要展开模板
+      // FF26 清空输入的值 bug2283
+      const mainBox = document.getElementById('mainSuit');
+      mainBox.innerHTML = "";
       insertSearch &&insertSearch({item,span});
       this.setState({
         search: false,
@@ -182,7 +185,8 @@ class MainSuit extends Component{
       const timer = setTimeout(function(){
         pushMessage && pushMessage(data);
         //调搜索接口 使用模板走EditableSpan里的搜索方法
-        getSearchData && getSearchData({inpStr:data,boxMark:1,itemType:0});
+        // FF26 会多一个<br>
+        getSearchData && getSearchData({inpStr:data.replace('<br>',''),boxMark:1,itemType:0});
       },config.delayTime);
       this.setState({
         symptom:false,
@@ -231,10 +235,10 @@ class MainSuit extends Component{
     const {freeText,saveText,datas,clearSearch,getSymptomFeature,currentData,saveChronic} = this.props;
     const that = this;
     let data = this.state.inpText;
-    const inner = e.target.innerText;
+    const inner = e.target.innerText || e.target.innerHTML ;
     //分词-现病史没有模板的时候才去获取
     if(inner.trim() && currentData&&currentData.length==0){
-      getFeature(inner).then((res)=>{
+      getFeature(inner.replace('<br>','')).then((res)=>{
         if(res.data.code==0){
           const result = res.data.data;
           // 慢病
@@ -250,12 +254,13 @@ class MainSuit extends Component{
       })
     }
     if(!isIE()){
-      inner?(e.target.innerText=""):(e.target.innerHTML="")
-      freeText && freeText(data.trim());
+      // inner?(e.target.innerText=""):(e.target.innerHTML="")
+      e.target.innerText?(e.target.innerText=""):(e.target.innerHTML="");
+      freeText && freeText(data.trim().replace('<br>',''));
     }else{
       if(datas.length==0){
         const ev = e || window.event;
-        const data = ev.target.innerText;
+        const data = ev.target.innerText || ev.target.innerHTML;
         // freeText && freeText(data.trim());
         freeText && freeText(data);
       }

+ 6 - 4
src/components/RadioInpDrop/index.jsx

@@ -219,17 +219,19 @@ class InputComp extends Component{
   }
   handleBlur(e){
     e.stopPropagation();
-    const text = e.target.innerText;
+    // FF26 只有innerHTML
+    const text = e.target.innerText || e.target.innerHTML;
     const {handleInp,index,value} = this.props;
-    e.target.innerText = '';
-    handleInp(index,text);
+    e.target.innerText?(e.target.innerText = ''):(e.target.innerHTML = '');
+    // FF26 会把&nbsp; 也获取到
+    handleInp(index,text.replace('&nbsp;',''));
   }
   componentWillReceiveProps(next){
     if(next.over&&!this.props.over){
       const inp = this.$inp.current;
       const value = this.props.value;
       setTimeout(function(){
-        inp.innerText = value;
+        inp.innerText?(inp.innerText = value):(inp.innerHTML = value);
       })
     }
   }

+ 1 - 1
src/store/actions/currentIll.js

@@ -835,7 +835,7 @@ export function insertLabelData(state,action){
       }
     }
   }
-  res.searchData = [];    //选中清空搜索内容(即关闭搜索弹窗)
+  res.searchDatas = [];    //选中清空搜索内容(即关闭搜索弹窗)
   res.update = Math.random();//console.log('现病史',res);
   return res;
 }