帮忙看一下错在什么地方
$(function () { $("#xc").find("option:selected").change(function () { $.ajax({ type: "GET", url: "AlbumImageAjax.cshtml", data: { albumId: $("#xc").find("option:selected").val() }, success: function (data) { $("#AlbumImage").empty(); $("#AlbumImage").html(data); } }); }); });
页面截图 关键的地方我用红框画出
$(function () { $("#xc").change(function () { $.ajax({ type: "POST", url: "AlbumImageAjax.cshtml", data: { albumId:$("#xc :selected").val()}, success: function (data) { $("#AlbumImage").empty(); $("#AlbumImage").html(data); } }); }); });
js你判断一下那个select被选中了,然后将值传过去就ok了
怎么写代码 弄好半天了 没做出来
@缘分0919: select有id吧,如id=select有的话$("#select").val();这样试试
@双子rain: 不行 试过了
@缘分0919: 你那种写法是mvc,url不对,你写的那个url是前台页面,url应该是控制器/方法
data: { albumId: $("#xc").find("option:selected").val() }
你这不写着吗?还想咋地
不对啦 传不过去
@缘分0919: 我想知道是怎么传不过去?还有url: "AlbumImageAjax.cshtml"看你这样子应该是MVC吧!url不是一个contoller吗?怎么会是一个view
@缘分0919: 你url对吗?url传到后台
@双子rain: 对的 我换文本框来试都有效果的
@双子rain: 对牛弹琴了
@IT民工-杰: 你这个话 我要是熟手的话就不会来这里问了
@IT民工-杰: 不是mvc
@缘分0919: 你知道ajax的工作原理吗?不知道的话可以先去找个demo看看,比如你这个是在mvc中的,然后去找个关于mvc ajax使用案例,了解下基本原理,然后你再来问问题,才可以互相交流,一个问题提出来人家不会立刻明白的,所以互相交流时要知道对方说的是什么,是否能都理解,这样才能进行下去
@缘分0919: AlbumImageAjax.cshtml那请问你这是什么文件?
@缘分0919: 或者你知道什么asp.net MVC吗?小姑娘不要不懂装懂哦
@IT民工-杰: @IT民工-杰: 我可没说我懂 就是不懂才来问的喔
@缘分0919: 可是你否认了这不是MVC哦!你想问为什么获取不到下拉框选中的值?也就是albumId
@IT民工-杰: 我那个是asp.net web page razor做的,并没有用mvc 。asp.net 除了mvc 别的格式也可以是.cshtml啦
@缘分0919: cshtml 是 MVC3 之后新增的视图文件,跟原先的 aspx 很相似。
区别主要在于二者的解释引擎不同。aspx 采用的是 WebForm Engine,而 cshtml 则是 Razor Rendering Engine。引擎的变化直接导致语法发生变化。aspx 中我们经常使用 <% test; %>这种,在 cshtml 中则改为 @{ test; } 这种更为简洁的写法。当然语法上的不同还有很多,题主可以专门去搜一下这方面资料。
只能在 MVC3 或更高版本等支持 Razor 的框架里使用 cshtml。
@IT民工-杰: 我说的是比如asp.net web page ,MVC ,Web Forms 3种方法。我做小网站没必要用mvc啦 mvc那么大 。我知道几乎都是用mvc ,asp.net web page razor 与html混编繁琐的话 写一些 helper助手同样可以简化。
@缘分0919: 好吧!的确没玩过web page,不好意思前面误会您了!表示道歉
@IT民工-杰: 客气了 要多讨论才会有进步 我是初学者 以后还望多指教
直接:$("#xc").val()。。。