Javascript 复选框检查已更改的事件触发两次C#
我有一个带有复选框的列表视图。根据我的要求,我通过javascript取消选中。但是由于该脚本,我的Checkchanged事件触发两次,并在第二次触发时返回先前未检查的(通过javascript)值 通常,任何操作复选框都会触发事件。但是,如果您在is not触发checkedchanged事件之前通过javascript检查了相同的项,则会触发checkedchanged事件 我不知道为什么在使用脚本时会发生这种情况 请在下面查找代码 JavaScriptJavascript 复选框检查已更改的事件触发两次C#,javascript,c#,jquery,asp.net,checkbox,Javascript,C#,Jquery,Asp.net,Checkbox,我有一个带有复选框的列表视图。根据我的要求,我通过javascript取消选中。但是由于该脚本,我的Checkchanged事件触发两次,并在第二次触发时返回先前未检查的(通过javascript)值 通常,任何操作复选框都会触发事件。但是,如果您在is not触发checkedchanged事件之前通过javascript检查了相同的项,则会触发checkedchanged事件 我不知道为什么在使用脚本时会发生这种情况 请在下面查找代码 JavaScript function CallConf
function CallConfirmBox() {
alert("456");
if (confirm('Schedule more than one time slot for the same day will overwrite the file')) {
return true;
}
else {
var id = document.getElementById('<%= hdnValue.ClientID%>').value;
alert(id);
$('#' + id).attr('checked', false);
alert("123")
id = "";
return false;
}
}
请帮忙!谢谢。检查您的onClick=“return callconfirbox();”我的复选框上没有onClick。我从代码后面调用javascript函数。请从后面的代码中检查if条件@我在一个新的Web表单上尝试了这个方法,只使用了一个按钮(Button1)受保护的无效按钮(object sender,EventArgs e){ScriptManager.RegisterStartupScript(this,typeof(Page),“UniqueID”,“alert('this popup')”,true);}正如@Tim所说的,尝试查找字符串“\u postBack”在页面的javascript中。
protected void chkCheck_CheckedChanged(object sender, EventArgs e)
{
CheckBox chkCheck = (CheckBox)sender;
ListViewItem item = (ListViewItem)chkCheck.NamingContainer;
ListViewDataItem dataItem = (ListViewDataItem)item;
string lookupId = lvLookup.DataKeys[dataItem.DisplayIndex].Value.ToString();
hdnValue.Value = chkCheck.ClientID;
if (lookupMstVal == "ScheduledTime." && lbCheckedIdList.Items.Count > 0 && chkCheck.Checked)
{
ScriptManager.RegisterStartupScript(this, this.GetType(), "CallConfirmBox", "CallConfirmBox();", true);//" + chkCheck.ClientID + "
}
if (chkCheck.Checked)
lbCheckedIdList.Items.Add(lookupId);
else
lbCheckedIdList.Items.Remove(lookupId);
hdfLookupId.Value = "";
foreach (ListItem itm in lbCheckedIdList.Items)
{
hdfLookupId.Value += (hdfLookupId.Value == "" ? "" : ",") + itm.Value;
}
postbackFlag = true;
}