J'ai un simple moteur de recherche sur l'un de nos plus anciens sites Web. Ce site exécute IIS 6.0 sur Windows Server 2003. La fonctionnalité de recherche est fournie par Microsoft Indexing Service.
Vous pouvez voir la fonctionnalité de recherche sur notre Site Web . (Tapez simplement des "haut-parleurs" et vous verrez des hits. P>
J'aimerais utiliser la fonction "Fullhit" offerte par le service d'indexation. Lors de l'utilisation de cette fonctionnalité, le service d'indexation insère les résultats du succès complet Entre "Begindetail" et "Enddetail" sur une page Web cible. P>
Le problème que j'ai, c'est que les documents qui sont renvoyés ont HTML. Cela semble désordonné. (Il suffit de cliquer sur "Hit Locator Tool". dans les résultats de la recherche ci-dessus pour voir ce que je veux dire.) p>
Je voudrais créer une section div, telle que ... p> puis, après La page est remplie que je souhaite utiliser JavaScript pour supprimer tous les éléments HTML (mais pas les données) entre l'ouverture et la fermeture de DIV. p> par exemple, Je peux également utiliser une aspersion classique si nécessaire. P> S'il vous plaît laissez-moi savoir si vous avez des suggestions ou connaissez des fonctions que je peux ajouter à la page cible pour accomplir ce TA sk. p> Merci d'avance. p> p> Bonnes données font> code> serait modifiée pour afficher uniquement
de bonnes données code>. P>
3 Réponses :
C'est ce que j'ai utilisé pour accomplir ce que vous essayez de faire. p>
string-strip-html p> blockQuote>
Cela a bien fonctionné pour moi. p>
J'ai inspecté votre page Web et il doit certainement être des erreurs logiques dans votre code ASP. (1) au lieu de quelque chose comme Si vous souhaitez décoder le mélange d'entités HTML,
& ltdiv & gt & lt / div et gt Code>, qui est très moche et c'est pourquoi il ralentit un texte au lieu du code HTML. Dans votre code ASP, vous ne devez pas analyser le texte du résultat de la recherche avant de le transmettre au navigateur. (2) Tout ce code mal formaté est inséré après la première balise de fermeture
HTML code> HTML CODE>, puis il existe une fermeture
corps code> et
HTML code> Tags après Le code mal formaté, donc quelque part dans votre code ASP, vous lui indiquez d'ajouter le code à la fin du document, plutôt que de l'insérer à l'intérieur de l'original
code> balises et texte dans HTML rendu, ce JavaScript peut fonctionner: P>
window.onload = function() {
var text = decodeHTMLEntities(document.body.innerText);
document.write(text);
}
function decodeHTMLEntities(text) {
var entities = [
['amp', '&'],
['apos', '\''],
['#x27', '\''],
['#x2F', '/'],
['#39', '\''],
['#47', '/'],
['lt', '<'],
['gt', '>'],
['nbsp', ' '],
['quot', '"']
];
for (var i = 0, max = entities.length; i < max; ++i)
text = text.replace(new RegExp('&'+entities[i][0]+';', 'g'), entities[i][1]);
return text;
}
Merci pour la réponse rapide. J'utilisais des fichiers TXT (sans balises HTML, HEAD ou BORD), comme indiqué les documents de fichier pour la page Table des matières ASP. En convertissant le document TXT en une page HTML standard, elle a corrigé le problème. Je vais revenir en arrière et changer le fichier incluant les liens en ligne.
J'ai maintenant la fonction de recherche fonctionnant comme prévu. Je voudrais remercier tout le monde pour ses commentaires perspicaces. Ce retour m'a aidé à identifier et à résoudre le problème. P>
OS: Windows Server 2003 IIS: 6.0 Microsoft Index Server P>
L'outil de localisation HIT ne fonctionnera correctement que pour les pages HTML. Si vous utilisez cet outil avec un simple fichier TXT, les résultats ne seront pas affichés correctement. P>
Si vous supprimez toutes les étiquettes, vous obtiendrez également des cas où les pauses de la ligne disparaissent, éventuellement mettre beaucoup de texte sur une ligne.