如何从Jquery ListView的特定区域删除链接?

时间:2014-06-23 13:57:21

标签: jquery asp.net .net jquery-ui jquery-mobile

我遇到以下情况:我正在使用 jQuery Mobile 视图的C#/ .NET网络应用程序。

我的视图显示以下 ListView

      <ul data-role="listview" data-inset="true" data-theme="b" data-split-icon="delete">
          @foreach (DataModel.Vulnerability.OVAL item in Model.VulnerabilityOVALs)
          {
              <li><a href="@Url.Action("Details", "Product", new { Title = item.Title })">
                  <h2>@item.Title</h2>
                  <table style="width: 100%">
                  <tr>
                      <th>Id</th>
                      <th>Definition ID</th>
                      <th>Title</th>
                      <th>URL</th>
                      <th>Status</th>
                      <th>Reference ID</th>
                  </tr>
                    <tr>
                        <td>@MyHelper.decodeNull((int)item.Id)</td>
                        <td>@MyHelper.decodeNull(item.DefinitionID)</td>
                        <td>@MyHelper.decodeNull(item.Title)</td>
                        <td>@MyHelper.decodeNull(item.URL)</td>
                        <td>@MyHelper.decodeNull(item.Status)</td>
                        <td>@MyHelper.decodeNull(item.ReferenceID)</td>
                </table>

            </a>
            <a href="@Url.Action("DeleteOval", "Editing", new { vulnId = Model.Id, currentOvalId = item.Id, currentOvalTitle = item.Title})">Delete</a>

            </li>
        }
    </ul>

正如您所看到的, ListView 由一些行组成,每一行分为两个主要区域:第一个区域包含一些文本信息,第二个区域包含删除X按钮代表:

<a href="@Url.Action("DeleteOval", "Editing", new { vulnId = Model.Id, currentOvalId = item.Id, currentOvalTitle = item.Title})">Delete</a>

现在我的问题是,如果用户点击第一个信息区域,它会获得以下错误消息,我希望这个区域不可点击\ linkable:

  '/'应用程序中的服务器错误。参数字典包含一个   对于非可空类型'System.Int64'的参数'id'的null条目   方法'System.Web.Mvc.ActionResult Details(Int64)'in   'MyWebApplication.Controllers.ProductController'。可选的   参数必须是引用类型,可空类型或声明为   一个可选参数。参数名称:参数说明:An   在执行当前Web期间发生了未处理的异常   请求。请查看堆栈跟踪以获取有关的更多信息   错误以及它在代码中的起源。

     

异常详细信息:System.ArgumentException:参数字典   包含非可空类型的参数“id”的空条目   方法'System.Web.Mvc.ActionResult Details(Int64)''System.Int64'   在'MyWebApplication.Controllers.ProductController'中。可选的   参数必须是引用类型,可空类型或声明为   一个可选参数。参数名称:参数

     

来源错误:

     

执行期间生成了未处理的异常   当前的网络请求。有关的来源和位置的信息   可以使用下面的异常堆栈跟踪来识别异常。

     

堆栈追踪:

     

[ArgumentException:参数字典包含空条目   对于方法的非可空类型'System.Int64'的参数'id'   'System.Web.Mvc.ActionResult Details(Int64)'in   'MyWebApplication.Controllers.ProductController'。可选的   参数必须是引用类型,可空类型或声明为   一个可选参数。参数名称:参数]
  System.Web.Mvc.ActionDescriptor.ExtractParameterFromDictionary(的ParameterInfo   parameterInfo,IDictionary 2 parameters, MethodInfo methodInfo) +815
System.Web.Mvc.ReflectedActionDescriptor.Execute(ControllerContext controllerContext, IDictionary
2参数)+315
  System.Web.Mvc.ControllerActionInvoker.InvokeActionMethod(ControllerContext   controllerContext,ActionDescriptor actionDescriptor,IDictionary`2   参数)+60
  System.Web.Mvc.Async.ActionInvocation.InvokeSynchronousActionMethod()   +76 ................................................ ..........................................   .................................................. ........................................   .................................................. ........................................

如何从这个信息丰富的区域删除HTML链接。

TNX

1 个答案:

答案 0 :(得分:0)

试试这个:

var html = $('ul li a:first').html();
$('ul li a:first').remove();
$('ul li').prepend(html);