单击jQuery contextMenu的表中单元格的值

时间:2015-12-19 00:48:38

标签: jquery jquery-plugins

考虑以下jsfiddle

它使用jQuery contextMenu显示添加到表正文的右键单击上下文菜单。

var departures: [String: [String]]?

override func viewDidLoad() {
    super.viewDidLoad()

    retrieveDepartures { departures, error in
        guard error == nil && departures != nil else {
            print(error)
            return
        }

        dispatch_async(dispatch_get_main_queue()) {
            self.departures = departures

            // and, for giggles and grins, this is how you might grab a list of departures given a particular key

            let departureTimes = self.departures!["LRKSFOweekdayDep"]
            print(departureTimes)
        }
    }
}

这是jQuery:

<table border="1">
  <tbody class="context-menu-one">
    <tr>
      <td>R1C1</td>
      <td>R1C2</td>
    </tr>
    <tr>
      <td>R2C1</td>
      <td>R1C2</td>
    </tr>
  </tbody>
</table>

如何获取调用上下文菜单的单元格的值?

例如,通过单击第1行调用上下文菜单,表格的1列应该为我提供值$(function() { $.contextMenu({ selector: '.context-menu-one', callback: function(key, options) { var clickedKey= key; //How to get the Value of the clicked cell here ? var m = $(options.$trigger).text(); window.console && console.log(m) || alert(m); }, items: { "edit": {name: "Edit", icon: "edit"}, "delete": {name: "Delete", icon: "delete"}, } }); $('.context-menu-one').on('click', function(e){ console.log('clicked', this); }) });

2 个答案:

答案 0 :(得分:4)

您需要使{ "core": { "css": { "bower_components/build/css/dist.min.css": [ "bower_components/angular/angular-csp.css", -> "bower_components/angular-material/angular-material.css", "bower_components/angular-ui-select/dist/select.min.css" ] }, "js": { "bower_components/build/js/dist.min.js": [ "bower_components/jquery/dist/jquery.min.js", "bower_components/angular/angular.min.js", -> "bower_components/angular-aria/angular-aria.js", -> "bower_components/angular-animate/angular-animate.js", -> "bower_components/angular-material/angular-material.js", "bower_components/angular-mocks/angular-mocks.js", "bower_components/angular-cookies/angular-cookies.min.js", "bower_components/angular-resource/angular-resource.min.js", "bower_components/angular-sanitize/angular-sanitize.min.js", "bower_components/angular-ui-router/release/angular-ui-router.min.js", "bower_components/angular-jwt/dist/angular-jwt.min.js", "bower_components/angular-bootstrap/ui-bootstrap-tpls.js", "bower_components/angular-ui-select/dist/select.min.js", "bower_components/web-bootstrap/index.js" ] } } } 选项选择表格单元格。然后回调中的selector:将是您单击的单元格。

this

DEMO

答案 1 :(得分:0)

这将在单击的td元素中获取文本:

$('.context-menu-one td').on('click', function(e){
     console.log($(this).text());
 })