0

我在 Page1 上有一个下拉列表,当用户更改该下拉列表上的元素时,我想使用 Jquery 加载另一个下拉列表,这在理论上听起来很简单,但它对我不起作用.. 这是我的第 1 页,我收到错误在@Url.Content('~/listings/service')上说字符文字中的字符太多。

 // Load the new dropdownlist on change
  <script>
    $("#adtype").change(function () {
        $("#div1").load("@Url.Content('~/listings/page2') #service");
    });
</script>
// if a user changes this  dropdownlist it should trigger the jquery code
 <select name="adtype" id="adtype">
<option>Sales</option>
<option>Marketing</option>
 </select>

  <div id="div1"></div>

第2页

<select name="service" id="service">
<option>yes</option>
<option>no</option>
 </select>

什么是让这个工作的最佳方法

4

1 回答 1

0

这是服务器端 C# 代码:

@Url.Content('~/listings/page2')

在 C# 中,单引号用于字符文字,双引号用于字符串文字。(与 JavaScript 不同,两者都可以用于字符串。)因为这是一个字符串而不是单个字符,所以它需要是双引号:

@Url.Content("~/listings/page2")

作为旁注,/listings/page2真的是静态内容,还是Listings控制器上的动作?如果是后者,那么您需要将其更改为使用@Url.Action(),因此它更便携:

@Url.Action("Page2", "Listings")

不过,这只是一个理论。根据您的设置,这可能不是真的,只是基于 MVC 标准以及您的“内容”没有文件扩展名这一事实。

于 2013-09-12T18:12:15.863 回答