Veidojot vienu lapu radās neikdienišķa situācija- bija nepieciešams izmainīt jau php izveidoto kodu un aizstāt to ar citu, ja izvadītajā html kodā ir sastopams cits unikāls kods.
Kā vienīgais risinājums man ienāca prātā javascript.
Iespējams kādam tas liksies gaužām vienkārši, tomēr man, kas ir “uz jūs” ar javascript izveidot šīs pāris rindiņas bija diezgan ķepīgi un laikietilpīgi.
Nu tad, lūk, pati funkcija un paskaidrojumi:
<script type="text/javascript">
//izsaucam funkciju pie ielādes
window.onload=gethtml;
function gethtml() {
//mainīgajam str nododam visas lapas html kodu
var str = document.body.innerHTML;
str.toString();
//pārbaudām vai ielasītajā mainīgajā str ir kods, kas nozīmēs, ka ir jāaizstāj rinda ar citu
var matchPos1 = str.search("id_menu_3_3");
//paskatāmies iegūto rezultātu- funkcija atgriež vērtību -1 , ja tas nav sastopams. Pretējā gadījumā atgriež kurā vietā ir atrasts.
if(matchPos1 != -1){
//mainīgajā str1 ierakstām tekstu, kuru ir jāaizstāj
var str1 = '<a href="/test/index.php/d">';
//mainīgajā str2 irakstām tekstu, ar kuru ir jāaizstāj
var str2 = '<a href="/test/index.php/d">';
veicam aizvietošanu
var str3 = str.replace(str1,str2);
//ja ir nepieciešams testa pēc pārbaudām vai ir aizvietojies
//alert(str3);
//izvadām rezultātu
document.body.innerHTML = str3;
}
//ja meklējamais kods nav atrasts, tad nedaram neko
}
</script>
Protams, aizvietošana nenotiks, ja pārlūkā būs atslēgts javascript
.
Šo funkciju, nedaudz pamainot, var pielāgot daudz biežāk sastopamai situācijai, kad nepieciešams vienkārši aizstāt vienu rindu ar otru.
Related posts:
- Atbrīvojamies no komentāru spama
- Lapas redirect
- Iegūt tekošo datumu izmantojot cmd
- Paplašinām wordpress iespējas
- Atvērtā koda portālu sistēmas- iespēja ietaupit vai nopelnīt?
- Datubāzes normālformas vai kā projektēt pareizi(papildināts)
- Vadības stili vai vadītājs 15 minūtēs :)
- Meklējot lētāko hostingu vai arī- vai hostējot var kaut ko nopelnīt?
- Attālināta failu piekļuve izmantojot epasta klientu (outlook)
- Logo mājaslapai