0
我陷入困境。也許有更好的方法與正則表達式(喜歡聽你的想法)。使用HTML模板字符串和Regex'ing動態值。卡在正則表達式
作爲一次性下面的作品,如果我只是在一件事上說, - 鏈接。
var testHtmlStr = '<tr>' +
'<td class="eve"><div class="pad" style="overflow:hidden;">' +
'<a href="#" class="pic"><img height="50" width="80" title="{%desc%}" alt="{%desc%}" src="{%image%}"></a>' +
'<div class="sum"><a href="{%link%}" class="url">{%name%}</a></div>' +
'{%star_rating_html%}' +
'<a href="#" class="gray">{%eventC%}</a>' +
'<span class="block">{%evenC%}</span>' +
'</div></td>' +
'<td class="mor"><div class="pad"><a class="mor" href="{%link%}">{%linkName%}</a>' +
'</div></td>' +
'</tr>';
var ss = 'link';
var syntax = new RegExp('(^|.|\r|\n)(\{%\s*(' + ss + ')\s*%\})',"gi");
alert(testHtmlStr.replace(syntax, '$1TESTESTESTESTS'));
以下是我的代碼,它不工作。我無法弄清楚爲什麼。相同的正則表達式,相同的html模板模式。另外,我的每個重複字符串,但似乎在每次重複後,字符串返回到其未修改的狀態。基本上,無論是像這樣的{%somehashkey%}這樣的html字符串,我希望它被替換爲相應的哈希值。 我想我的代碼會工作,不知道什麼是錯的。有些事情是出於怪事,我知道。我無法追捕它。你的想法?
(function($){
var testHTML2 = '<tr>' +
'<td class="eve"><div class="pad" style="overflow:hidden;">' +
'<a href="#" class="pic"><img height="50" width="80" title="{%desc%}" alt="{%desc%}" src="{%image%}"></a>' +
'<div class="sum"><a href="{%link%}" class="url">{%name%}</a></div>' +
'{%rating%}' +
'<a href="#" class="gray">{%eventC%}</a>' +
'<span class="block">{%evenC%}</span>' +
'</div></td>' +
'<td class="mor"><div class="pad"><a class="mor" href="{%link%}">{%linkName%}</a>' +
'</div></td>' +
'</tr>';
var type = "yahoo";
var disp = {};
disp.eventC = '5';
disp.rating = "<div>rating here</div>";
switch (type) {
case 'yahoo':
disp.link = 'http://www.yahoo.com';
disp.image = 'SOMe IMAGE' ;
disp.name = "VENICE BEACH";
disp.desc = 'MORE INFO ';
disp.linkName = 'YAHOO';
break;
default:
disp.link = 'http://www.google.com';
disp.image = 'Some IMAGE';
disp.name = "BABY BABY";
disp.desc = 'MORE INFO YOYOYO';
disp.linkName = 'GOOGLE';
}
$.each(disp, function(t, num){
var syntax = new RegExp('(^|.|\r|\n)(\{%\s*(' + t + ')\s*%\})',"gi");
testHTML2.replace(syntax, num)
});
alert(testHTML2);
})(jQuery);
請tar和羽毛我!哇,我的這個新錯誤。感謝您指出!哈哈哈。我感覺很糟糕:-)再次感謝。我一定很累! –