2016-12-05 65 views
0

我正在嘗試更改自定義文件輸入的默認文本以在西班牙文中顯示它。Bootstrap 4 - JavaScript cus

 <div class="card"> 
      <div class="card-header"> 
       <h2>12. Carga de ficheros customizado</h2> 
      </div> 
      <div class="card-block"> 
       <form> 
       <div class="form-group"> 
        <label class="custom-file"> 
         <input type="file" id="fileCustom" class="custom-file-input"> 
         <span class="custom-file-control"></span> 
        </label> 
        <small id="fileCustom" class="form-text text-muted">Para hacerlo personal 
        hay que envolver en una etiqueta el elemento input. 
        </small> 
       </div> 
       </form> 
      </div> 
     </div> 

,我使用的JavaScript在Translating or customizing the strings(在頁面底部)

$fileCustom: (
    placeholder: (
    en: "Choose file...", 
    es: "Seleccionar archivo..." 
), 
    button-label: (
    en: "Browse", 
    es: "Navegar" 
) 
); 

的建議我已經改變了我的文檔<html lang="es">的語言和可能的錯誤是在JavaScript和HTML代碼之間的關係,但我無法在互聯網上找到解決方案。

回答

0

我建議你使用的圖像,你想查看 「Seleccionar檔案館......」 和ES: 「Navegar」 您可以使用下面的代碼行:

var W3CDOM = (document.createElement && document.getElementsByTagName); 

function initFileUploads() { 
    if (!W3CDOM) return; 
    var fakeFileUpload = document.createElement('div'); 
    fakeFileUpload.className = 'fakefile'; 
    fakeFileUpload.appendChild(document.createElement('input')); 
    var image = document.createElement('img'); 
    image.src='pix/button_select.gif'; 
    fakeFileUpload.appendChild(image); 
    var x = document.getElementsByTagName('input'); 
    for (var i=0;i<x.length;i++) { 
     if (x[i].type != 'file') continue; 
     if (x[i].parentNode.className != 'fileinputs') continue; 
     x[i].className = 'file hidden'; 
     var clone = fakeFileUpload.cloneNode(true); 
     x[i].parentNode.appendChild(clone); 
     x[i].relatedElement = clone.getElementsByTagName('input')[0]; 
     x[i].onchange = x[i].onmouseout = function() { 
      this.relatedElement.value = this.value; 
     } 
    } 
} 

N: B:你應該從上面的代碼改變圖像的網址。