【问题标题】:ReactJS.NET : Unable to get click events to fireReactJS.NET:无法触发点击事件
【发布时间】:2015-11-19 13:09:31
【问题描述】:

我正在使用 ASP.NET MVC 运行 ReactJS.NET,并且一切都呈现良好,除了...我无法触发任何类型的事件...

我尝试过的:

1) 消除所有 JQuery 引用/使用 - 没有成功

2) onHover,onClick,在 React 组件内部和外部都有函数 - 没有成功

这是我的代码:

在 index.cshtml 中附加 ProductLine React 组件

@Html.React("ProductLine", Model)

反应组件

function addToCart() {
alert("Hoohohoho!!!");
};

var ProductLine = React.createClass({
    render: function () {
        return(
            <div className="col-md-12 col-sm-12 col-xs-12" key={this.props.productData.name}>
                <button onClick={this.addToCart}>Click me!</button>
                <div className="row" >
                    <div onClick={addToCart} className="col-md-12 col-sm-12 col-xs-12 nopadding row-default" >
                        <div className="col-md-3 col-sm-5 col-xs-5 nopadding">
                            <span className="table table-col ">
                                <input type="checkbox" id="cbxCheck2" className="jq_select_product" />
                                <label htmlFor="cbxCheck2" className="jq_select_product">{ this.props.productData.name }</label>
                            </span>
                        </div>
                        <div className="col-md-4 hidden-sm hidden-xs nopadding">
                            <span className="table table-col table-text-small">
                                { this.props.productData.label }
                            </span>
                        </div>
                        <div className="col-md-3 col-sm-4 col-xs-4 nopadding">
                            <span className="table table-col">
                                849,- (12 mnd)
                            </span>
                        </div>
                        <div className="col-md-2 col-sm-3 col-xs-3 nopadding">
                            <span className="table table-col table-text-small text-right">
                                <img id="imgShowMore" src="../../Images/arrow_purple_down.png" className="show-more _icon jq_expand_listview" /><label className="show-more _lbl jq_expand_listview">Vis mer</label>
                            </span>
                        </div>
                    </div>
                    <ProductDetails productData={this.props.productData} />
                </div>
            </div>
        );
    },
    addToCart: function (e) {
        alert("Hooooo!!!");
    },
});

【问题讨论】:

标签: asp.net-mvc reactjs.net


【解决方案1】:

经过一天1/2的反复试验,我突然尝试将所有JSX文件引用放在_Layout.cshtml页面的底部...

其实这一切都解决了……

【讨论】:

  • 您是否考虑过将 onClick 处理函数放入 react-class 中?这样,它只限于该类:)
  • Jepp :) 这就是我现在所做的.. 如果你仔细观察.. 你会看到我有两个 addToCart... 一个“function addToCart()”和一个 addToCart: function()在 react 组件内部 :) 第一个仅用于测试 :)
  • 我也面临同样的问题,还没有得到答案。你的解决方案不适合我。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2023-03-27
  • 1970-01-01
  • 2015-04-28
  • 2011-11-19
  • 1970-01-01
  • 1970-01-01
  • 2012-12-07
相关资源
最近更新 更多