Javascript 使用jquery和php更新img
我试图在不使用ajax和php刷新页面的情况下更新img封面,但它根本不起作用 HTMLJavascript 使用jquery和php更新img,javascript,php,jquery,html,ajax,Javascript,Php,Jquery,Html,Ajax,我试图在不使用ajax和php刷新页面的情况下更新img封面,但它根本不起作用 HTML <div class="cover" > <img id="b1" src="<?php echo $user->picture_path();>"class="cover"/> <div id="modal-cover" class="cov-lo"> </div>
<div class="cover" >
<img id="b1" src="<?php echo $user->picture_path();>"class="cover"/>
<div id="modal-cover" class="cov-lo"> </div>
</div>
图片_路径();>“class=”cover“/>
js
$('#b2').on({
'click': function(){
$('#b1').attr('src', <?php echo $user->picture_path();?> + '?' + new Date().getTime());}
});
<form action="profile.php" method="POST" enctype="multipart/form-data" >
<div class="hio">
Upload <input type="file" onchange="this.form.submit()" name="cover" id="bla2"class="custom-file-input" />
</div>
</form>
$('#b2')。在({
“单击”:函数(){
$('#b1').attr('src',+'?'+新日期().getTime());}
});
输入和表单
$('#b2').on({
'click': function(){
$('#b1').attr('src', <?php echo $user->picture_path();?> + '?' + new Date().getTime());}
});
<form action="profile.php" method="POST" enctype="multipart/form-data" >
<div class="hio">
Upload <input type="file" onchange="this.form.submit()" name="cover" id="bla2"class="custom-file-input" />
</div>
</form>
上传
我认为您对PHP和HTML的解释有一个基本的误解:
echo$user->picture_path();
已经被执行,并被浏览器解释为纯文本
一旦你的JS进入浏览器,它将如下所示:
$('#b2').on({
'click': function() {
$('#b1').attr('src', '/the/path/to/the/picture' + '?' + new Date().getTime());
}
});
Ajax看起来更像这样: js/jQuery:
$(document).on({'click', '#b2', function(){
$.ajax({
type: 'post',
url: 'my_ajax_processor_file.php',
data: '',
success: function(data){
$('#b1').attr('src', data);
}
}); //END ajax
}); //END #b2.click
<?php
$dt = new Date().getTime();
$pp = 'get user picture path here';
echo $pp .' - '. $pp;
my\u ajax\u processor\u file.php:
$(document).on({'click', '#b2', function(){
$.ajax({
type: 'post',
url: 'my_ajax_processor_file.php',
data: '',
success: function(data){
$('#b1').attr('src', data);
}
}); //END ajax
}); //END #b2.click
<?php
$dt = new Date().getTime();
$pp = 'get user picture path here';
echo $pp .' - '. $pp;
输入bla2中的旧id是正确的,即使使用正确的id也无法工作friend@HossamElddinMagdy请更新您的问题并说明清楚。“不工作”是什么意思?您检查过JS控制台吗?尽管您是对的,但我感觉情况并非如此,因为+'?'+new Date().getTime()
最后。我假设这是一种保证新图像的方法。不过,我可能是错的,这部分毫无意义。想看看OP在哪里使用了你的代码吗?我以完全相同的方式关闭了它。@Fred ii-谢谢。