我有html代码,如:
<button type="button" class="button button-raised larger" onclick="app.shareOnIg();">Share on Instagram</button>
</div>
<script type="text/javascript">
app.initialize();
</script>
js看起来像:
var app = {
// Application Constructor
initialize: function() {
this.bindEvents();
},
bindEvents: function() {
document.addEventListener('deviceready', this.onDeviceReady, false);
},
shareOnIg: function () {
Instagram.share('picture', 'example', function (err) {
});
}
};
我想动态地用实际值替换example。 plz建议如何。我试图在函数中添加一个参数并修改了调用,如
<button type="button" class="button button-raised larger" onclick="app.shareOnIg(" + myparam + ");">Share on Instagram</button>
</div>
但这不起作用
答案 0 :(得分:1)
x = pd.DataFrame(['20.1','19.1','12.3'])
x[0].convert_objects(convert_numeric=True)
&#13;
var app = {
shareOnIg: function (value) {
console.log(value);
Instagram.share('picture', value, function (err) {
});
}
};
&#13;
答案 1 :(得分:1)
在这种情况下一切都是正确的。一个问题是如何传递变量myparam
。如果变量是全局变量,我们几乎不能将代码修改为:
<button type="button" class="button button-raised larger" onclick="app.shareOnIg(myparam);">Share on Instagram</button>
</div>
只是改变:
onclick="app.shareOnIg(" + myparam + ");"
为:
onclick="app.shareOnIg(myparam);"
答案 2 :(得分:0)
您似乎需要将参数传递给shareOnIg
函数
shareOnIg: function (data) {
// console.log(data) here to see the parameter passed from the thml
Instagram.share('picture', 'example', function (err) {});
}
答案 3 :(得分:0)
相反,不要引人注目:
var app = {
// Application Constructor
initialize: function() {
this.bindEvents();
},
bindEvents: function() {
var btns = document.querySelectorAll('.button');
document.addEventListener('deviceready', this.onDeviceReady, false);
btns.forEach((btn)=>btn.addEventListener('click', this.shareOnIg.bind(myparam)));
},
shareOnIg: function(param) {
Instagram.share('picture', 'example', function(err) {});
}
};
答案 4 :(得分:0)
这个怎么样?
<input type="text" value="John" id="name">
<button onclick="sayHi('name')">Say Hi</button>
<script>
function sayHi(control) {
var e = document.getElementById(control);
console.log(e.value);
}
</script>
答案 5 :(得分:0)
从长远来看,你会发现更容易省去onclick
属性并编写适当的事件处理程序。下面是一个如何完成它的例子。
<button type="button" id="doit" … > … </button>
document.addEventListener("DOMContentLoaded",function() {
var button=document.querySelector('button#doit');
button.addEventListener('click',function() {
app.shareOnIg(myparam);
}, false);
}, false);
var app = {
// Application Constructor
initialize: function() {
this.bindEvents();
},
bindEvents: function() {
document.addEventListener('deviceready', this.onDeviceReady, false);
},
shareOnIg: function (something) { // new parameter
Instagram.share('picture', something, function (err) {
}
}
};
您的问题的解决方案是在shareOnIg
方法中添加参数变量,并在tmie到来时调用该方法。
在上面的重写中,我有
button
id
以使其可以找到DOMContentLoaded
事件添加了一些行为,当页面加载到足以让DOM准备就绪时触发id
的按钮,并将一个函数附加到其click
事件。