单击按钮

时间:2015-09-12 11:19:25

标签: javascript c# asp.net file-upload

我有一个文件上载,在按钮点击时丢失了它的内容。我有一个确认按钮来冻结用户进行任何进一步更改的页面。更改完成后,按钮应从Apply to Submit重命名。但在此过渡期间(Autopostback),fileupload会丢失其内容。

为了避免这种自动回复,我试图通过冻结文本框和其他控件来解决这个问题,但是按钮名称没有改变。

if (document.getElementById('<%=Submit.ClientID%>').value == "Apply") {
    ....
    document.getElementById('<%=Remarks.ClientID%>').disabled = false;
    document.getElementById('<%=Submit.ClientID%>').value == "Submit";
    return false;
}
return true;

我也尝试使用下面的代码片段,但dint工作。在这两种情况下,文本框都被禁用,但按钮名称dint更改。

if (document.getElementById('<%=Submit.ClientID%>').value == "Apply") {
    ....
    document.getElementById('<%=Remarks.ClientID%>').disabled = false;
    document.getElementById('<%=Submit.ClientID%>').innerHTML == "Submit";
    return false;
}
return true;

已经引用了一些网站,但大多数网站建议使用value或innerHTML。不知道为什么它在这里起作用。我还缺少什么?

请建议如何解决这个问题。

2 个答案:

答案 0 :(得分:1)

如果您不必将==只放一个并且想要更改该值,那么它就不是。

更改

document.getElementById('<%=Submit.ClientID%>').innerHTML == "Submit";

document.getElementById('<%=Submit.ClientID%>').value = "Submit";

答案 1 :(得分:0)

最简单的解决方案是确保在按钮定义后或文件末尾加载JavaScript代码。

这是正确的形式:

<button id="test"></button>
<script>

    var b = document.getElementById("test");
    b.innerHTML = "test" ;
</script>

不是这个:

<script>

    var b = document.getElementById("test");
    b.innerHTML = "test" ;
</script>
<button id="test"></button>

你也可以使用jQuery:

<button id="test"></button>
<script src="http://ajax.aspnetcdn.com/ajax/jQuery/jquery-2.1.4.min.js"></script>
<script>
        $("#test").text("test");
</script>
相关问题