0

我有这个JS代码:

        const getData = {

            // set vars
            start_date: <?php echo $start_ts; ?>,
            end_date:   <?php echo $stop_ts; ?>,

            init: function() {
                this.cacheDom();
                this.bindEvents();
            }, 
            cacheDom: function() {
                this.form = form;
                this.show = show;               
            }, 
            bindEvents: function() {
                this.show.click(this.sendData(this.start_date, this.end_date));
            },
            sendData: function(sdate, edate, e){
                e.preventDefault();
                // this.form.submit();
                console.log(sdate);
                console.log(edate);
            },
            render: function() {}


        }
        // run object
        getData.init();

我正在尝试通过this.start_date点击this.end_date事件。尝试了几种不同的方式(你看到的就是其中之一)

请帮助我通过变量传递点击事件。

4

1 回答 1

1
        bindEvents: function() {
            this.show.onclick = this.sendData.bind(this, this.start_date, this.end_date);
        },
  1. 通过调用click您模拟单击按钮,而不是附加事件处理程序(这适用于 jquery 对象但不适用于 dom 元素)
  2. 除了事件本身之外,要将一些参数“添加”到您的处理程序,请使用bind
于 2018-05-01T09:40:43.813 回答