为什么我的jquery数据不会显示在我的HTML页面中

时间:2017-10-06 15:27:27

标签: javascript jquery html

我是javascript的新手,这让我很困惑。我没有写这段代码,但我需要它才能工作! 问题是我的<p>标记中没有显示信息。在我到达var hint_result之前,一切似乎都有效。但我只是不知道为什么信息没有显示。试着爱javascript但苦苦挣扎:) 它应该显示密码提示。 这是发回的内容的一个例子:

{"CONDITION":"true","MESSAGE":"top of the fruit","UUID":"1851-CCC6-A8A80A1B148637C6"}

代码:

<!--- Password Hint Window Start --->
<div class="password_hint">
  <p>Forgot your password?<br />No problem... we can fix that!</p>

<div class="hint_form">
  <p>Enter your email address</p>
    <form method="post">
      <input placeholder="Email_address" name="password_hint_email_address" type="text" tabindex="1" />
  <p class="button small passwordHint" style="width: 100%; margin: 1px 0 10px;" tabindex="2" >Submit</p>
</form>
</div>

                <!--- Error Messages --->
                <p class="hint_result"></p>
            </div>


(function() {               
$("p.button.small.passwordHint").click(function(e) {
    e.preventDefault();
    $.ajax({
      type: "POST",
      url: globalURL+"/myfolder/userlogin.cfc?" + url_params,
      data: { 
        method: "PasswordHint",
        email: $("input[name='password_hint_email_address']").val()
      },
      success: function(hint) {
        var hint = jQuery.parseJSON(hint);

            if (hint.CONDITION == true) {
      var hint_result = $("p.hint_result").html("Your password hint is \"" + hint.MESSAGE + "\"").addClass(" messageSuccess");
      $(hint_result).show("slow");
    } else if (hint.CONDITION == false) {
        var hint_result = $("p.hint_result").html(hint.MESSAGE).addClass(" messageError");
        $(hint_result).show("slow");
    } 
      },
      error: function(e) {
        // handle error
        //alert("Sorry there has been an error");
      }
    });
});
}());           

提前致谢。

2 个答案:

答案 0 :(得分:0)

您的代码<script>您应该尝试使用此标记来填写您的代码。

答案 1 :(得分:0)

看起来问题在于这一行:

$(hint_result).show("slow");

将hint_result设置为jQuery对象之前的行(addClass返回一个jQuery对象):

var hint_result = $("p.hint_result").html("Your password hint is \"" + hint.MESSAGE + "\"").addClass(" messageSuccess");

因此,您可以简单地删除hint_result周围的选择器语法。你的固定线看起来像这样:

hint_result.show("slow");

选择器语法$(&#34; ...&#34;)实际上是从DOM元素创建一个jQuery对象,但是hint_result已经是一个jQuery对象。