按钮元素没有响应

时间:2020-03-09 16:48:03

标签: javascript jquery

请告诉我我的jquery代码出了什么问题(看起来一切正常,但仍然无法正常工作!)
按钮生成不起作用,当我单击它时什么也没有发生!

ps:我到处都在搜索这个问题,我也找不到自己和同样问题困扰的灵魂

谢谢

$('#meta_mal_api_button').click(function(e) {
	e.preventDefault();

  var valMALID = $('input[name=meta_mal_api_input]').get(0).value;

  var languange = "<?php echo $langu; ?>";

  var target = document.URL;
  $.getJSON("https://mal.developersidn.com/anime/?id=https://myanimelist.net/anime/" + valMALID + languange, function(json) {
    $.each(json, function(key, val) {

      var valTitle = "";
      if (key == "<?php echo $titleml; ?>") {
        valTitle += "" + val + "";
        $('input[name=dev_title]').val(valTitle);
        $("input[name=post_title]").val(valTitle);
      }

      var valEnglish = "";
      if (key == "english") {
        valEnglish += "" + val + "";
        $("input[name=dev_english]").val(valEnglish);
      }

      var valJapanese = "";
      if (key == "japanese") {
        valJapanese += "" + val + "";
        $("input[name=dev_japanese]").val(valJapanese);
      }

      var valStatus = "";
      if (key == "status") {
        valStatus += "" + val + "";
        $("select[name=dev_status]").val(valStatus);
      }

      var valType = "";
      if (key == "type") {
        valType += "" + val + "";
        $("select[name=dev_type]").val(valType);
      }

      var valDuration = "";
      if (key == "duration") {
        valDuration += "" + val + "";
        $("input[name=dev_duration]").val(valDuration);
      }

      var valDuration = "";
      if (key == "duration") {
        valDuration += "" + val + "";
        $("input[name=dev_duration]").val(valDuration);
      }


      var valProducer = "";
      if (key == "producers") {
        valProducer += "" + val + "";
        $("input#new-tag-producers").val(valProducer);
      }

      <?php if($catmal == '1') { ?>
      var valTitleCat = "";
      if (key == "<?php echo $titleml; ?>") {
        valTitleCat += "" + val + "";
        $('input#newcategory').val(valTitleCat);
        $("input#category-add-submit").click();
      }

      <?php } ?>
      var valScore = "";
      if (key == "score") {
        valScore += "" + val + "";
        $("input[name=dev_score]").val(valScore);
      }

      var valDate = "";
      if (key == "aired") {
        valDate += "" + val + "";
        $("input[name=dev_date]").val(valDate);
      }

      var valDate = "";
      if (key == "aired") {
        valDate += "" + val + "";
        $("input[name=dev_date]").val(valDate);
      }

      var valTrailer = "";
      if (key == "pv") {
        valTrailer += "" + val + "";
        $("input[name=dev_trailer]").val(valTrailer);
      }

      var valRating = "";
      if (key == "score") {
        valRating += "" + val + "";
        $("input[name=dev_rating]").val(valRating);
      }

      var valUsers = "";
      if (key == "users") {
        valUsers += "" + val + "";
        $("input[name=dev_users]").val(valUsers);
      }


      var valSource = "";
      if (key == "source") {
        valSource += "" + val + "";
        $("input[name=dev_source]").val(valSource);
      }


      var valTotalEpisode = "";
      if (key == "episodes") {
        valTotalEpisode += "" + val + "";
        $("input[name=dev_episode]").val(valTotalEpisode);
      }

      var valSeason = "";
      if (key == "premiered") {
        valSeason += "" + val + "";
        $('input#new-tag-season').val(valSeason);
      }

      var valGenre = "";
      if (key == "genres") {
        valGenre += "" + val + "";
        $('input#new-tag-genre').val(valGenre);
      }

      var valStudio = "";
      if (key == "studios") {
        valStudio += "" + val + "";
        $('input#new-tag-studio').val(valStudio);
      }



      var valImg = "";
      var valAutoupload = "1";
      if (key == "image") {
        valImg += "" + val + "";
        // Insert image using ajax
        if (valAutoupload == '<?php echo $autoupload; ?>') {
          var poster = valImg;
          //alert(poster);
          $.ajax({
            type: "POST",
            url: target,
            data: {
              'poster_url': poster,
            },
            success: function(response) {
              $("input[name=dev_featured]").val(response);
            }
          });
        } else {
          $("input[name=dev_featured]").val(valImg);
        }
      }
      var valDesc = "";
      if (key == "synopsis") {
        var output = val.replace(/\n/g, "<br />");
        valDesc += "" + output + "";
        if (typeof tinyMCE != "undefined") {
          var editor_id = wpActiveEditor;
          if ($('#wp-' + editor_id + '-wrap').hasClass('tmce-active') && tinyMCE.get(editor_id)) {
            tinyMCE.get(editor_id).setContent(valDesc);
          } else {
            $("textarea[name=content]").val(valDesc);
          }
        }
      }

    });
  });

});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="rwmb-clone rwmb-text-clone">
  <input size="30" type="text" id="meta_mal_api_input" value="28249" class="rwmb-text " name="meta_mal_api_input">
  <a href="#" class="button-primary" id="meta_mal_api_button">Generate</a>
</div>

2 个答案:

答案 0 :(得分:3)

在文档就绪块中添加您的jquery代码。

  $(document).ready(function () {

    });

将click函数绑定到元素时,该元素不会加载到DOM中。

答案 1 :(得分:2)

由于您将锚标记用作按钮,因此在添加自定义功能之前,应防止链接的默认行为:

$('#meta_mal_api_button').click(function(e) {
    e.preventDefault();
    ...
});

有效的示例代码:

$('#meta_mal_api_button').click(function(e) {
  e.preventDefault();
  alert('Button clicked');
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="rwmb-clone rwmb-text-clone">
  <input size="30" type="text" id="meta_mal_api_input" value="28249" class="rwmb-text " name="meta_mal_api_input">
  <a href="#" class="button-primary" id="meta_mal_api_button">Generate</a>
</div>

相关问题