我做了一個腳本,如果用戶沒有登錄,將創建一個登錄表單。我已經使用html()函數創建了表單(讓我知道如果有更好的選擇)。到目前爲止,這工作正常,表單會在用戶輸入正確的用戶名/密碼後登錄用戶。無法在從jQuery腳本添加的表單上運行jquery函數
我的問題是,我不能然後在這些新添加的表單上運行jquery函數,即使代碼添加後的事實。例如,像
$('#usernamefield').attr('value', 'login');
什麼都不會做。顯然我做錯了什麼,但我不知道是什麼。我在下面提供了相關的代碼(關於提交到服務器的部分已被刪除)。所有這些代碼都會在用戶未登錄時創建表單。然後,我只需要在單擊用戶名錶單時彈出警告,但顯然該部分在此示例中不起作用。
//This will create the login form and will submit data to the server and perform an action based on the results
var loginForm = function(){
$('.logindiv').html("<!-- Form Code Start --><form id='login' method='post' accept-charset='UTF-8'><input type='hidden' name='submitted' id='submitted' value='1'/><div><span class='error'></span></div><label for='username' >UserName*:</label><input type='text' name='formusername' id='formusername' value='' maxlength='50' /><span id='login_username_errorloc' class='error'></span><label for='password' >Password*:</label><input type='password' name='formpassword' id='formpassword' maxlength='50' /><span id='login_password_errorloc' class='error'></span><input type='submit' name='Submit' value='Submit' /></form>")
};
$(document).ready(function(){
//Check Login and load appropriate apps based on result
$.post('./reg_source/check_login.php', function(data) {
//If the user is logged in then this section will run. Ugh double negatives!
if (data !== "false") {
getUserData(data);
$('.logindiv').html("Welcome back, "+dbdata[4]+"! <br> <a href='reg_source/logout.php'>Logout</a> | <a href='profile.php'>Profile</a>");
}
//If the user is NOT logged in then this will run
else if (data === "false")
{
loginForm();
$('.registerdiv').html("<a href = 'register.php'>Register Here</a>");
}
});
$('#formusername').click(function(){
alert("You clicked me!");
});
});
爲您的代碼創建一個小提琴。 –