我在使用asp.net创建的网页中使用了javascript函数。我在标签的click事件上调用了该函数。但是在那个页面中,我已经处理了其他事件,当我正在执行任何事件时,每次我的页面都会重新加载。我想点击标签时应该调用java脚本函数。
我在html中调用了以下函数 -
<a id="displayText" href="JavaScript:void(0)" onclick="javascript:toggle5('toggleText', 'displayText');">More</a>
我的javascript函数是 -
function toggle5(showHideDiv, switchTag) {
var ele = document.getElementById(showHideDiv);
var imageEle = document.getElementById(switchTag);
if (ele.style.display == "block") {
ele.style.display = "none";
imageEle.innerHTML = 'More'; //<img src="../images/more.JPG" style="height:18px;width:18px;border:none;">';
}
else {
ele.style.display = "block";
imageEle.innerHTML = 'Less'; //<img src="../images/less.JPG" style="height:18px;width:18px;border:none;">';
}
}
我使用上面的函数隐藏在html标签下面---
<div id="toggleText" style="display:none;height:100%;width:100%;">
</div>
在点击事件中执行的代码 -
protected void btnReset_Click(object sender, EventArgs e)
{
txtBrought.Text = "";
txtCall.Text = "";
txtNoCall.Text = "";
txtNoSales.Text = "";
txtSearchData.Text = "";
ddlMD.SelectedIndex = 0;
ddlCEO.SelectedIndex = 0;
ddlCRM.SelectedIndex = 0;
ddlRH.SelectedIndex = 0;
chkBrought.Checked = false;
chkCall.Checked = false;
chkInSalesPlan.Checked = false;
chkNoCall.Checked = false;
chkNoSales.Checked = false;
chkOSPending.Checked = false;
chkOutSalesPlan.Checked = false;
txtBrought.Enabled =false;
txtCall.Enabled = false;
txtNoCall.Enabled = false;
txtNoSales.Enabled = false;
}
我在使用javascript函数隐藏的标记中放置了不同的asp.net控件。我使用了asp.net控件的事件。其中一个控件是asp.net按钮。
怎么做?
答案 0 :(得分:0)
嗯,我不确定你的问题,但我有一个提示。我认为你的事件正在冒泡,因此它会导致触发默认事件,例如<a>
标记会做什么,ergo:refresh。所以你需要停止这个冒泡:
$('a').bind('click', function(e){
e.stopPropagation();
e.preventDefault();
// CODE YOU WANNA DO
});
答案 1 :(得分:0)
我尝试了上面的代码,我没有得到页面刷新,它对我来说很好,
浏览器测试:IE8,fireFox3