Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/31.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/url/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
imgsrc标记和JavaScript_Javascript_Asp.net_Image - Fatal编程技术网

imgsrc标记和JavaScript

imgsrc标记和JavaScript,javascript,asp.net,image,Javascript,Asp.net,Image,是否可以从IMG SRC标记调用JavaScript函数来获取图像url 像这样: <IMG SRC="GetImage()" /> <script language="javascript"> function GetImage() {return "imageName/imagePath.jpg"} </script> 函数GetImage(){返回“imageName/imagePath.jpg”} 这使用的是.NET 2.0。否。Img的

是否可以从IMG SRC标记调用JavaScript函数来获取图像url

像这样:

<IMG SRC="GetImage()" />

<script language="javascript">
   function GetImage() {return "imageName/imagePath.jpg"}
</script>

函数GetImage(){返回“imageName/imagePath.jpg”}

这使用的是.NET 2.0。

否。Img的SRC属性不是事件,因此内联JS将永远不会触发。

您不能将其内联到image@SRC,但您应该能够从图像后面的内联脚本块中立即调用它:

<img src="" id="myImage"/>
<script type="text/javascript">
  document.getElementById("myImage").src = GetImage();
</script>

document.getElementById(“myImage”).src=GetImage();

没有。这是不可能的,至少在所有浏览器中是不可能的。您可以这样做:

<img src="blank.png" id="image" alt="just nothing">
<script type="text/javascript">
    document.getElementById('image').src = "yourpicture.png";
</script>

document.getElementById('image').src=“yourpicture.png”;

您最喜欢的JavaScript框架将提供更好的方式:)

您正在寻找这个.src吗`

<img src='images/test.jpg' onmouseover="alert(this.src);"> 


由于您使用的是.NET,因此可以添加
runat=“server”
属性,并在codebehind中设置
src

您可能可以在服务器端执行此操作。或者,您可以附加一个onload事件来交换映像src。我想接下来的问题是,为什么要在第一步中使用Javascript?

您可以通过调用SRC中的aspx页面来动态地提供图像


在页面一侧,您需要将图像放入响应中,并更改图像的内容类型

唯一的“问题”是你的图像不会被索引,你最好在提供者页面上放置一些缓存,否则会破坏服务器

是否可以从IMG SRC标记调用JavaScript函数来获取图像url

你的意思是做如下的事情吗

<img src="javascript:GetImage()" />
然后,使用以下html:

<img src="http://yourdomain.com/images/empty.gif" onload="getImageUrl(this)" />

onload事件只有在您将实际图像设置为src属性时才会触发-如果您没有设置该属性或将其设置为空字符串或类似的内容,您将不会得到love。将其设置为单像素透明gif或类似设置


无论如何,这种方法是可行的,但取决于你真正想要实现的目标,这可能不是最好的解决方案。我不知道你为什么要这样做,但也许你有一个很好的理由(你想与我们分享!)。

我以前也做过类似的事情,IIRC的诀窍是你不能更改作为DOM树一部分的图像的src属性。因此,最好的方法是编写没有图像的HTML框架,1)创建一个onLoad函数,该函数使用document.createElement生成一个新的img元素,2)使用setAttribute()设置src属性,3)将其附加到DOM树中。

反复调用图像的onLoad事件执行类似操作


一次又一次调用图像的OnLoad事件,执行类似操作

如果你想玩黑客游戏,这也行

<img src='blah' onerror="this.src='url to image'">

这个怎么样

var imgsBlocks = new Array( '/1.png', '/2.png', '/3.png');
function getImageUrl(elemid) {  
var ind = document.getElementById(elemid).selectedIndex;
document.getElementById("get_img").src=imgsBlocks[ind]; 
}
这不是工作

<img src="'+imgsBlocks[2]+'" id="get_img"/>


问题并没有真正概括出您想要实现的目标?同意-我花了一分钟才弄明白他的意图…Opera不支持内联脚本标记?这对我来说是个新闻,这与事实相去甚远。建议将脚本标记尽可能放在页面下方,因为DOM呈现会延迟到脚本执行完毕。通过将脚本标记放在正文的末尾,您可以真正加快感知页面加载时间。但是,它确实需要一个URI,并且可以运行javascript:pseudo URI。这是XSS漏洞的一个原因;问题中没有任何迹象表明情况是这样的。
var imgsBlocks = new Array( '/1.png', '/2.png', '/3.png');
function getImageUrl(elemid) {  
var ind = document.getElementById(elemid).selectedIndex;
document.getElementById("get_img").src=imgsBlocks[ind]; 
}
<img src="'+imgsBlocks[2]+'" id="get_img"/>