2017-10-06 140 views
1

我是JavaScript新手,這讓我很困惑。我沒有寫這段代碼,但我需要它來工作,當然! 問題是信息未顯示在我的<p>標記中。一切似乎工作,直到我到達var hint_result。但我只是不知道爲什麼信息不顯示。試圖愛JavaScript,但掙扎:) 它應該顯示密碼提示。 這是什麼送回
的一個實例:爲什麼我的jquery數據不能顯示在我的HTML頁面

{"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"); 
     } 
    }); 
}); 
}());   

在此先感謝。

+0

檢查ajax開始使用F12開發工具點擊 – GGO

+1

$(hint_result)>你不需要把它放在$()中。 hint_result已經是一個JQuery對象。不知道這是否會解決你的問題,因爲我不明白你的問題出了什麼問題/意外。 – Reinard

+0

我同意@Reinard。我認爲這是問題(無論如何都是其中之一)。當我發佈我的答案時沒有看到您的評論。 :-) –

回答

0

您的代碼<script>您應該嘗試使用此標記來放置您的代碼。

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"); 

的選擇語法$(「...」)實際上創建了一個從DOM元素(S)jQuery對象,但已經hint_result是一個jQuery對象。

相關問題