2013-09-24 6 views
0

У меня есть окно поиска с Ajax;Добавить ссылку на информационный текст

И я хочу, чтобы изменить NotfindText как это: «Нет результатов, но вы можете попробовать расширенный поиск от here»

Но я не могу добавить ссылку. И я не знаю об Аяксе. Кто-нибудь может мне помочь?

function searchxx(a){(function(d){var f={blogURL:"",srcBlank:"http://1.bp.blogspot.com/-htG7vy9vIAA/Tp0KrMUdoWI/AAAAAAAABAU/e7XkFtErqsU/s1600/grey.gif",findText:"Search results for keyword",NotfindText:"No result!",Showthumb:true,LoadingText:"Searching...",scrthumbSize:50,summaryLength:100};f=d.extend({},f,a);var b=d("#ajax-search-form"),e=b.find(":text");b.append('<div id="search-result"></div>');var c=d("#search-result");b.on("submit",function(){var g=e.val();c.show().html('<div class="load">'+f.LoadingText+"</div>");d.get((f.blogURL===""?window.location.protocol+"//"+window.location.host:f.blogURL)+"/feeds/posts/default?alt=json-in-script&q="+g+"&max-results=9999",function(w){var v=w.feed.entry,r,q,u,s,h,k,m="";if(v!==undefined){m="<h4>"+f.findText+" &quot;"+g+"&quot;</h4>";m+='<a class="close" href="/">&times;</a><ol>';for(var o=0;o<v.length;o++){var l=new RegExp(g,"ig"),u=v[o].title.$t.replace(l,"<mark>"+g+"</mark>");for(var n=0,t=v[o].link.length;n<t;n++){if(v[o].link[n].rel=="alternate"){s=v[o].link[n].href}}r=("content" in v[o])?v[o].content.$t:("summary" in v[o])?v[o].summary.$t:"";if(f.Showthumb===true){var p=/<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi;h=d("<div></div>").append(r.replace(p,""));k=h.find("img");if("media$thumbnail" in v[o]){q=v[o].media$thumbnail.url.replace(/\/s[0-9]+\-c/g,"/s"+f.scrthumbSize+"-c")}else{if(k.length!=0){q=k[0].src}else{q=f.srcBlank}}}r=r.replace(/<\S[^>]*>/g,"");if(r.length>f.summaryLength){r=r.substring(0,f.summaryLength)+"..."}r=r.replace(l,"<mark>"+g+"</mark>");m+='<li><a href="'+s+'" >'+(f.Showthumb===true?'<img width="'+f.scrthumbSize+'" height="'+f.scrthumbSize+'" src="'+q+'"/>':"")+"<strong>"+u+"</strong></a>"+(f.summaryLength>0?"<p>"+r+"</p>":"")+"</li>"}m+="</ol>";c.html(m)}else{c.html('<a class="close" href="/">&times;</a><strong>'+f.NotfindText+"</strong>")}},"jsonp");return false});b.on("click",".close",function(){c.fadeOut();return false})})(jQuery)}; 

Вот SS:

enter image description here

ответ

0

Не кажется как вопрос AJAX, вам просто нужно дать строку ключа Notfindtext. Заменить Notfindtext на эту строку:

NotfindText: "No results but you can try advanced search 
from <a href=\"http://google.com/\">HERE</a>", 

Помогает ли это? Проверьте консоль Chrome javascript и посмотрите, какие ошибки вызывают.

+0

Благодарим за быстрый ответ, но решение стенда не работает. Я отредактировал первый пост и добавил все коды. Также мой тестовый сайт: http://esnekt.blogspot.com/ – yasakhayat

+0

Сори Он теперь работает Я просто erease точкой с запятой, и это не работает :) Эта одна: («Нет результата, но вы можете сделать поиск here»); Спасибо, ребята :) – yasakhayat

0

Одна вещь, все ответы, которые будут написаны здесь, - это ответ, полученный со страницы, на которой работает Ajax. Таким образом, вы бы писали все коды там, а не здесь.

Вы не указали ни одного из своих кодов, то есть -1 для вашего вопроса. Но я не буду, только думая, что вы можете добавить код здесь в вопросе.

Хорошо, как добавить ссылку <a> здесь является пример:

Response.Write("No result, but you can do a search <a href='~/link'>here</a>"); 

Таким образом, это был respone. Иначе вы можете использовать это:

success: function (data) { 
    if(data == "") { 
    NotfindText = "No result, but you can do a search <a href='~/link'>here</a>"; 
    } 
} 

Но опять же, это не то, что написал бы аякс. Вы просто пишете код самостоятельно. Это бесполезно.

Вы должны использовать success, чтобы убедиться, что это написано после того, как ajax не дает результата.

Смежные вопросы