无法在aspx页面中访问javascript中的代码隐藏变量

Unable to access codebehind variable in javascript in the aspx page

本文关键字:javascript 代码 隐藏 变量 访问 aspx      更新时间:2023-09-26

我试图访问一个字符串从代码后面到javascript在aspx页面

背后的代码
  protected void btnSearch_Click(object sender, EventArgs e)
        {            
            List<string> imageList = new List<string>();
            string images="";
            imageList = GetMatchingImages(@"C:'Users'Shahzad'Documents'Visual Studio 2013'Projects'ImageSearchEngine'ImageSearchEngine'Images", txtSearch.Text);
            foreach (var image in imageList)
            {
                images += "'"" + image + "'",";
            }
            images ="["+ images.Substring(0, images.Length - 1)+"]";
        }
        public List<string> GetMatchingImages(string path, string keyword)
        {
            var matches = new List<string>();
            var images = System.IO.Directory.GetFiles(path);
            foreach (var image in images)
            {
                if (image.Contains(keyword))
                {
                    matches.Add(image);
                }
            }
            return matches;
        }

和aspx页

<script type="text/javascript">
     var imagesList;
     function getImages()
     {
         return <%=images%>;
     }
     imagesList = getImages();
 </script>

但它给出错误'图像不存在于当前上下文中'请帮助我找出我在哪里犯了错误

这一定是images变量作用域的问题。尝试在btnSearch_Click函数外声明。

这可能会解决这个问题,因为目前在这个函数之外无法访问图像。

谢谢,zryw141