Аутсорсинг jQuery запрос по солр во внешнем javascript - PullRequest
0 голосов
/ 08 апреля 2020

Я пытаюсь передать свой встроенный javascript во внешний. Встроенный код выглядит следующим образом и работает нормально.

    <script type="text/javascript">
    $.getJSON('../servlets/solr/select?q=mods.genre:issue_a&amp;state:published&amp;rows=1&amp;
    fl=returnId,id,search_result_link_text,parentLinkText,mods.title&amp;sort=modified
    desc&amp;wt=json',
    function (data) {
    $(data.response.docs).each(function(i, doc){
    let ausgabe = "Ausgabe: ";
    let titelmain = doc['search_result_link_text'];
    let titelall = doc['mods.title'];   
    for (let i=0, item; item=titelall[i]; i++) {
    if (item.indexOf(titelmain)>=0) {
    titelall.splice(i,1);
    } 
        }
    let titel = titelall.join('&#160;' + '&#x7C;' + '&#160;');                  
    $('#periodicals').append($('<div class="modified"></div>')
                    .append('<p class="lastmod-p interline text-content">' + 
    '<span class="fa fa-arrow-right text-info" />' + '&#160;' + 
    '<span style="font-weight:bold">' + (doc['parentLinkText']) + 
    '</span>' + '<br/>' + '<a class="navbar-link" style="font-weight:bold" href="../receive/'+doc['returnId']+'">' + doc['search_result_link_text'] + '</a>' + '<br/>' + titel + '</p>' + '<p/>')
                        );
                    }); 
                });
    </script>

Внешний javascript (новый. js) выглядит следующим образом. Он хранится в той же папке, что и html (index. html), вызывая его.

$(document).ready(function(){
jQuery.getJSON('http://localhost:8282/mir/servlets/solr/select?q=mods.genre:journal&amp;state:published&amp;rows=2&amp;fl=id,search_result_link_text,mods.title,mods.title.main,sb_amt,sb_ort&amp;sort=modified desc&amp;wt=json',
    function (data) {
      $(data.response.docs).each(function(i, doc){      
        let amt = doc['sb_amt'] ? doc['sb_amt'] : '&#160;';
        let ort = doc['sb_ort'] ? doc['sb_ort'] : '&#160;';
        let alletitel = doc['mods.title'];
        let titel = alletitel.slice(1);
        titel = titel.join('&#160;' + '&#x7C;' + '&#160;');
        let meta = [titel,amt,ort];         
        let text = meta.join('&#160;' + '&#x7C;' + '&#160;');
        $('#periodicals').append($('<div class="modified"></div>')
                        .append('<p class="lastmod-p interline text-content">' + 
 '<a class="navbar-link" style="font-weight:bold" href="../receive/'+doc['id']+'">' + doc['search_result_link_text'] + '</a>' + '<br/>' + text + '</p>')
        );
    }); 
});
alert('New Documents');
});

Я добавил предупреждение, чтобы убедиться, что внешний javascript разрешен. Текст предупреждения отображается правильно, но данные не отображаются. В моем HTML коде у меня есть это:

    <script src="new.js"></script>
    <div class="col-md-4">
        <h4 class="text-dark font-weight-bold" style="">PERIODICALS</h4>
        <div id="periodicals"></div>
        <a style="vertical-align:top" href="../servlets/solr/select?q=mods.genre:journal&amp;  
    state:published&amp;sort=modified desc"></a>
    </div>

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...