所以我试图在我的IMG标签中加入一个变量,基本上用一个用户名替换一个部分。登录成功后,我希望它获取已成功通过身份验证的用户的用户名,并在变量中替换该用户名。我正在使用javascript和html。我有什么想法可以实现这个目标吗?如果我手动将img src设置为jpg,它会显示并且我的其余代码按预期工作。我只是需要它来显示图片取决于用户名。
$('form').submit(function () {
var username = $('#username').val(),
password = $('#password').val();
clearMessage();
if (!username || !password) {
showMessage('Enter a username and a password');
return false;
}
// Web Proxy request to log the user on
ajaxWrapper({
url: 'PostCredentialsAuth/Login',
dataType: 'xml',
success: loginSuccess,
error: loginError,
data: { username: username, password: password }
});
function loginSuccess(data) {
var $loginXml = $(data),
result = $loginXml.find('Result').text();
if (result == 'success') {
$('form').hide();
$('#log-off').show();
$('#EmployeePic').show();

<img id="EmployeePic" src="'EmployeePhotos/'+Username+'.jpg'" alt="EmployeePic" class="EmployeePic" height="96" width="96" >
&#13;
答案 0 :(得分:1)
你最初可以隐藏你的图像(我添加了一些内联样式,但你也可以使用jQuery:$('#EmployeePic').hide();
。然后当用户登录时,图像源变为username.jpg
并且显示图像。
$('form').submit(function () {
var username = $('#username').val(),
password = $('#password').val();
clearMessage();
if (!username || !password) {
showMessage('Enter a username and a password');
return false;
}
// Web Proxy request to log the user on
ajaxWrapper({
url: 'PostCredentialsAuth/Login',
dataType: 'xml',
success: loginSuccess,
error: loginError,
data: { username: username, password: password }
});
function loginSuccess(data) {
var $loginXml = $(data),
result = $loginXml.find('Result').text();
if (result == 'success') {
$('form').hide();
$('#log-off').show();
$('#EmployeePic').error(function() {
$(this).attr('src', 'EmployeePhotos/Default.jpg');
}).attr('src', 'EmployeePhotos/'+$('#username').val()+'.jpg').show();
}
}
});
&#13;
<img id="EmployeePic" src="" alt="EmployeePic" class="EmployeePic" height="96" width="96" style="display: none;">
&#13;