我在asp.net中使用javascript的范围滑块,我想调用函数后面的代码进行数据绑定,所以我在textchange事件上使用但是当jsfuction的textchnged有任何其他选项绑定数据时,evnt不会被触发当范围滑块值更改时。
这是我的代码:
<div>
<input id="myRange" type="range" min="1" max="10" value="1" class="slider"
onchange="abc()">
<p>Value: <span id="demo"></span></p>
</div>
<script>
var slider = document.getElementById("myRange");
var output = document.getElementById("demo");
output.innerHTML = slider.value;
slider.oninput = function() {
output.innerHTML = this.value;
}
var hiddenControl = '<%= inpHide.ClientID %>';
document.getElementById(inpHide).value = output;
function abc() {
var hdnvalue = document.getElementById("demo");
document.getElementById('<%=TextBox2.ClientID%>').value = hdnvalue.innerText;
}
</script>
<asp:TextBox ID="TextBox2" runat="server" AutoPostBack="true" CausesValidation="true"
OnTextChanged="TextBox2_TextChanged"></asp:TextBox>
答案 0 :(得分:0)
您必须强制执行来自javacript函数的事件调用,如下所示: -
function abc()
{
var hdnvalue = document.getElementById("demo");
document.getElementById('<%=TextBox2.ClientID%>').value = hdnvalue.innerText;
__doPostBack('TextBox2','TextChanged');
}
您也可以设置焦点并以编程方式将其删除,但这将是一个有点冗长的方法。