簡體   English   中英

從語言文件加載時缺少一半的字符串

[英]Half of the string is missing on load from language file

我不知道我的標題是否正確,但是這個錯誤似乎真的很奇怪,作為母語不是英語的人,我很難用這么短的單詞來解釋它。

我最近在網頁上添加了多語言功能,所有字符串均從語言文件加載,頁面上的一個文本字段存在問題。 我有一個頁面,您可以在其中輸入名稱,並且在開頭和jQuery處理程序中有一個靜態文本字段,以防萬一鍵入內容,然后在其下方創建新的文本字段,確切地說是相同的。 現在,此文本字段具有占位符以獲取有關此信息的信息,並且該文件是從lang.php文件加載的:

<input type="text" id="one" class="form-control text-controller" placeholder=<?php echo $lang['placeholder_name_textfield']; ?>>

如果是靜態文本字段(開頭是一個靜態文本字段),則為占位符加載的文本為“ Enter”,但是其代碼為:

$lang['placeholder_name_textfield'] = 'Enter name!';

這不僅適用於EN語言,而且每種語言都存在該錯誤。

使用javascript創建的動態文本字段(在其下方創建的動態文本字段)不存在該錯誤。 它們都有上面代碼中指定的文本。

頁面中的圖片(第一個字段是靜態字段,第二個字段是動態字段):

在此處輸入圖片說明

有什么想法可能導致此錯誤?

一個非常簡單的例子,您在屬性值周圍缺少引號,這意味着解析器在遇到空白時會立即將其截斷。

更改

<input type="text" id="one" class="form-control text-controller" placeholder=<?php echo $lang['placeholder_name_textfield']; ?>>

<input type="text" id="one" class="form-control text-controller" placeholder="<?php echo $lang['placeholder_name_textfield']; ?>">

溫馨提示:如果您啟用了簡短的echo標簽(或在PHP> = 5.4上),則可以將其縮短為

<input type="text" id="one" class="form-control text-controller" placeholder="<?=$lang['placeholder_name_textfield']?>">

您忘記了報價!

<input type="text" id="one" class="form-control text-controller" placeholder="<?php echo $lang['placeholder_name_textfield']; ?>">

這會起作用

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM