I am trying to pass a file name as argument to JS function from a gridview Row (C#) :
onclick='<%# Eval("ImageName", "return loadImage({0})") %>'
which gets rendered as:
onclick="return loadImage(Happy.jpg)"
and ERROR:
Uncaught ReferenceError: Happy is not defined
When I manually added single Quotes(‘ ‘),It worked properly,Like
onclick="return loadImage('Happy.jpg')"
Now how can I add quotes programatically,OR How can I pass JS parameters with dot(.) ?
(‘{0}’) did’nt work,Error : “The server tag is not well formed.”
===============SOLUTION==================
Ok,Solved it like this :
added onclick="javascript:loadImage(this.src);"
<asp:Image ID="Image1" runat="server" ImageUrl='<%# "~/UploadedImages/"+ Eval("ImageName") %>' Height="43px" Width="55px" onclick="javascript:loadImage(this.src);" CssClass="dlImage" />
got full path inside js Function ie
“http://localhost:52636/ChuttiTime_Alka/UploadedImages/Happy.jpg”
Sliced it to get the file Name
function loadImage(imageName) {
var bigImage = document.getElementById("ctl00_ContentPlaceHolder1_FEPropertyImageControl1_propertyBigImage")
var filename = imageName.replace(/^.*[\\\/]/, '')
bigImage.src='../UploadedImages/'+filename;
}
Ok,Solved it like this :
added
onclick="javascript:loadImage(this.src);"got full path inside js Function ie
Sliced it to get the file Name