2013-09-24 163 views
0

我有像這樣的Ajax搜索框;將鏈接添加到信息文本

而且我想改變NotfindText這樣的:「沒有結果,但是你可以從here嘗試高級搜索」

但我不能添加鏈接。我對Ajax沒有任何瞭解。有誰能夠幫助我?

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>"); 

這樣,那是輸入反應。否則你可以使用這個:

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

但是,這不是阿賈克斯會寫的。你只是自己編寫代碼。它沒用。

您必須使用success以確保在ajax沒有提供結果時寫入。