问题: 有4个文本框。如果用户不希望将所有这些填满,则应显示“0”并保存。
例如: 我只填写了四个中的两个文本框。我点击了保存。 它应该自动保存这两个空文本框的默认值(“0”)。
这是代码(javascript):
这是文本框:
<td width="20%">
asp:TextBox ID="left" runat="server"></asp:TextBox>
px
</td>
这是保存按钮:
<asp:Button ID="save" Text="Save"
OnClick="btn_save_click" OnClientClick="return Validate();" runat="server"/>
这是Validate()函数:
function Validate() {
var value5 = document.getElementById('<%=left.ClientID%>').value;
if (value5 == '') {
alert("Please enter the missing fields");
return false;
}
}
答案 0 :(得分:1)
执行文本框的后端检查。
string valueToBeSaved="0";
if(!String.IsNullOrEmpty(txtBox.Text))
{
valueToBeSaved = txtBox.Text;
}
您甚至可以将逻辑放在这样的函数中。
public string ChecTextBoxValue(TextBox textBox)
{
string valueToBeSaved="0";
if(!String.IsNullOrEmpty(textBox.Text))
{
valueToBeSaved = textBox.Text;
}
return valueToBeSaved;
}
这样你所要做的就是:
sqlCommand.Parameters.Add("@yourParam", ChecTextBoxValue(yourTextBox));
请记住这是一个小例子。如果您发布代码,我可能会有更好的建议。
另请注意,您还必须在后端执行验证。可以在用户的浏览器上关闭JavaScript,它们最终会传递意外的值。