2012-08-10 74 views
3

我有一个Image,FileUpload和一个Button控件。我想从FileUpload控件获取的本地路径将图像保存到服务器。我在C#的按钮上实现了这个功能..使用javascript在asp.net中设置图片控件的图片网址

现在我想要设置Image控件OnClientClick的图像URL,其中实现了服务器端代码。

根据FileUpload控件中选择的文件,图像URL将会延迟每次。任何人都可以帮助我了解如何使用JavaScript来设置基于文件上传控件中选择的三维文件的图像URL?

回答

7

首先,明白,JavaScript不理解,关怀,甚至不知道有关C#和花哨的“控制”。它只处理HTML。期。也就是说,您可以使用JavaScript的setAttribute函数来设置img标记(不是控件)的图像URL。就像这样:

document.getElementById('my-image').setAttribute('src', 'http://ecx.images-amazon.com/images/I/41%2BjAZ4dUGL._SS500_.jpg'); 

演示在这里: http://jsfiddle.net/je9Gx/

+0

asp控件的id在渲染时会发生变化,因此您无法直接找到它。这就是为什么Jquery更容易找到它们的原因。 – Pranav 2012-08-10 10:22:26

+0

@Pranav,我并不反对使用jQuery更容易......这就是为什么它存在的原因,我只是说你不应该假设OP正在使用,或者甚至想要使用,jQuery。如果'getElementById'不起作用,则OP可以找到_will_工作的另一个选择器。我的答案的本质以及他的问题的答案是使用'setAttribute'(我刚刚注意到你在你的答案中实现了)。 _他在哪里使用该功能,这取决于OP。但是,使用jQuery会使它更容易。 – 2012-08-10 10:28:21

+0

OP询问ASP图像控件不是HTML图像,这就是为什么我建议使用jQuery,因为通过普通的javascript很难找到asp控件;你必须编写正则表达式来在JavaScript中找到控制,否则可以使用简单的Jquery。 – Pranav 2012-08-10 10:29:58

2

您可以使用此代码查找图像控件,其中imgid是图像控件的ID;

$("[id$='imgid']").attr("src",pathfromfileuploader); 

//pathfromfileuploader=it is a variable which stores the path taken from file uploader; 

希望这将有助于:)

+0

你假设OP是使用jQuery。 – 2012-08-10 10:19:04

+0

@AymanSafadi:是的..它是更容易找到asp控件的方法,速度更快。 – Pranav 2012-08-10 10:23:46