C# DropDownList用于onchange,但用于相同的值
我试图触发onchange事件,即使它们选择的值与以前相同。我尝试过onselect,但它根本不会触发。如果值相同,则不会触发onchange。有没有其他模式可以让这成为可能C# DropDownList用于onchange,但用于相同的值,c#,asp.net-mvc,razor,C#,Asp.net Mvc,Razor,我试图触发onchange事件,即使它们选择的值与以前相同。我尝试过onselect,但它根本不会触发。如果值相同,则不会触发onchange。有没有其他模式可以让这成为可能 @Html.DropDownListFor(m => m.SelectedMarkdownDate, Model.ValidDatesSelectList, new{onchange = "LoadGridData(this);" }) 最终使用JQuery: var go = false; $('#Selecte
@Html.DropDownListFor(m => m.SelectedMarkdownDate, Model.ValidDatesSelectList, new{onchange = "LoadGridData(this);" })
最终使用JQuery:
var go = false;
$('#SelectedMarkdownDate').on('click',function() {//on click
if (go) {//if go
var date = $('#SelectedMarkdownDate option:selected').text();
LoadGridData(date);
go = false;//switch off
} else { go = true; }//if !go, switch on
}).on('blur', function () { go = false; });
看起来你回答了你的问题,但是我已经做了一把小提琴,所以它在这里 您可以使用带有模糊的onClick事件来判断下拉列表是否打开,当您选择相同的项目时,它会向您发出警报,以证明它可以识别该事件
var dropboxOpen=false,
oldItem=null;
计数器=0;
函数onClick(e){
如果(dropboxOpen){
if(oldItem&&oldItem==e.target.value){
警报(“选择相同”)
}
oldItem=e.target.value;
dropboxOpen=false;
}否则{
dropboxOpen=true;
}
}
函数onBlur(e){
dropboxOpen=false;
}
沃尔沃汽车
萨博
欧宝
奥迪
哪个是正确的?没有任何更改,也没有triggercorrect,但是我想知道是否有其他方法可以获得此行为。您可以使用onclick事件吗?onclick行为不正确,因为在选择某个内容之前,只要单击下拉列表上的任何位置,它就会触发,而一旦选择某个内容,它就需要触发。mousedown也不起作用,因为您单击一次只打开下拉列表,导致它触发。您可以使用jquery添加事件吗?
<script>
var dropboxOpen = false,
oldItem = null;
counter = 0;
function onClick(e) {
if (dropboxOpen) {
if (oldItem && oldItem === e.target.value) {
alert("same selected")
}
oldItem = e.target.value;
dropboxOpen = false;
}else{
dropboxOpen = true;
}
}
function onBlur(e){
dropboxOpen = false;
}
</script>
<select onclick="onClick(event)" onblur="onBlur(event)">
<option value="volvo">volvo</option>
<option value="saab">saab</option>
<option value="opel">opel</option>
<option value="audi">audi</option>
</select>