[英]Passing the asp classic html as a string from client-side to server-side
[英]String replacement of mixed text and HTML (client or server-side)
我想替換網頁上的文本和html字符串。 這是為了突出顯示文本。 因此,突出顯示的文本存儲在數據庫中,並且在加載其網頁時,代碼應查找並替換該文本。
例如,
$original_string = "SOME TEXT";
$replacement_string = "<span data-id='7334' class='highlight'>SOME TEXT</span>";
我在使用PHP str_replace時遇到問題,因為替換怪異的html實體或較大的字符串不是很好。
所以現在,我正在嘗試使用JS在客戶端進行此操作,並且使用js replace()獲得了更好的結果。
我的問題是-實現上述目標的最佳方法是什么? 我應該使用PHP解析器還是堅持使用JS?
如果我使用JS,應該如何構造for循環,以便所有替換都在同一文本上進行? 這不是很有效:
var value = $('#domainContainer').html();
var $highlightsArray_search = <?php echo json_encode($highlightsArray_search); ?>;
var $highlightsArray_replace = <?php echo json_encode($highlightsArray_replace); ?>;
for(var i=0; i<2; i++){
var search_value = $highlightsArray_search[i];
var replace_value = $highlightsArray_replace[i];
var formattedSnippet = value.replace(search_value, replace_value);
value = formattedSnippet;
}
$('#domainContainer').html(formattedSnippet);
您必須用quotes
將php代碼包裝quotes
。只需像這樣進行更改,
var $highlightsArray_search = "<?php echo json_encode($highlightsArray_search); ?>;"
^ ^
var $highlightsArray_replace = "<?php echo json_encode($highlightsArray_replace); ?>;"
^ ^
以您的html代碼到php字符串為例。
<?php
$original_string = "SOME TEXT";
$first ="<span data-id='7334' class='highlight'>";
$second = "</span>";
echo $first.$original_string.$second;
?>
試試這個可能會有所幫助
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.