Я должен нажать кнопку Jquery дважды - PullRequest
0 голосов
/ 17 января 2020

У меня есть простая кнопка div, которую я должен дважды щелкнуть, чтобы ссылка работала. Как это можно остановить?

Спасибо

<div class="toolbar">
  <table width="100%">
   <tr>
    <td class="toolbar-button" title="Print Data" id="btnNew1" onClick="javascript: submitformPrint();">
      <img src="'. IMAGES .'/Print.png" width="16" height="16" />
      <span>Print data</span>
    </td>
    <td width="100%" height="10" align="right">&nbsp;</td>
  </tr>
 </table>
</div>

function submitformPrint(){
    $('#btnNew1').click(function(e) {
        e.preventDefault();
        e.stopImmediatePropagation();
        $('#form2').attr({
            action: '../../../<?php echo CurrentVersion; ?>/Template/PopUpSimple.php?txtPageName=Pupils_TripsPrint',
            target: '_blank'
        });
        $('#form2').submit();
    });
}

1 Ответ

1 голос
/ 17 января 2020

Проблема с кодом, который вы дали, состоит в том, что на кнопке есть обработчик onClick.

<td class="toolbar-button" title="Print Data" id="btnNew1" onClick="javascript: submitformPrint();">

когда вы нажимаете btnNew1, вы связываете

$('#btnNew1').click(function(e) {
    e.preventDefault();
    e.stopImmediatePropagation();
    $('#form2').attr({
        action: '../../../<?php echo CurrentVersion; ?>/Template/PopUpSimple.php?txtPageName=Pupils_TripsPrint',
        target: '_blank'
    });
    $('#form2').submit();
});

Это причина, по которой вам приходится дважды нажимать кнопку. Вместо этого ваш код должен выглядеть следующим образом.

<div class="toolbar">
      <table width="100%">
       <tr>
        <td class="toolbar-button" title="Print Data" id="btnNew1">
          <img src="'. IMAGES .'/Print.png" width="16" height="16" />
          <span>Print data</span>
        </td>
        <td width="100%" height="10" align="right">&nbsp;</td>
      </tr>
     </table>
    </div>

    $(document).ready(function(){
        $('#btnNew1').click(function(e) {
            e.preventDefault();
            e.stopImmediatePropagation();
            $('#form2').attr({
                action: '../../../<?php echo CurrentVersion; ?>/Template/PopUpSimple.php?txtPageName=Pupils_TripsPrint',
                target: '_blank'
            });
            $('#form2').submit();
        });
    }});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...