我正在尝试从.cshtml文件中调用按钮单击:
<input type="button" id="ImageHosting" value="To Image Hosting" onclick="ImageHosting_Click()"/>
这是.js文件:
function ImageHosting_Click() {
$("#ImageHosting").click(function () {
alert("test");
});
}
我无法收到提醒信息。知道为什么吗?
答案 0 :(得分:6)
你在HTML中内联事件处理程序,你也使用jQuery在函数内再次绑定,这是不正确的。
只需删除内嵌onclick,
<input type="button" id="ImageHosting" value="To Image Hosting" />
改变JS
$(document).ready ( function () {
$("#ImageHosting").click(function () {
alert("test");
});
});
如果此按钮是动态插入的话,
$(document).ready ( function () {
//replace document below with enclosing container but below will work too
$(document).on('click', "#ImageHosting", function () {
alert("test");
});
});
如果旧版本的jQuery(&lt; 1.7)
,请使用.live/.delegate
答案 1 :(得分:5)
// Try like this:
$("#ImageHosting").click(function() {
alert("test");
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="button" id="ImageHosting" value="To Image Hosting" />
答案 2 :(得分:4)
与SKS的答案相反(保持内联onclick
属性):
<input type="button" id="ImageHosting" value="To Image Hosting" onclick="ImageHosting_Click()"/>
和
function ImageHosting_Click(){
alert("test");
}
甚至全部合二为一:
<input type="button" id="ImageHosting" value="To Image Hosting" onclick="alert('test');"/>