我在网站上有一个联系表格,通过电子邮件将表格发送给网站所有者。
单击 btnSubmit 按钮运行后面的vb代码以发送电子邮件,该工作正常,直到我使用Bootstrap设置表单,然后按钮单击事件停止触发。
如果我在父表单标签之外使用按钮它再次起作用,但我希望它在里面,所以它将在必填字段上触发HTML5验证。
代码无效:
<div class="form-group">
<label for="txtName">Name:</label>
<asp:TextBox ID="txtName" runat="server" type="text" CssClass="form-control" required />
</div>
<div class="form-group">
<label for="txtEmail">Email address:</label>
<asp:TextBox ID="txtEmail" runat="server" type="email" CssClass="form-control" required />
</div>
<div class="form-group">
<label for="ddlProduct">Product</label>
<asp:DropDownList ID="ddlProduct" runat="server" CssClass="form-control" AppendDataBoundItems="True" DataSourceID="SQSItemNames" DataTextField="itemName" DataValueField="itemName">
<asp:ListItem></asp:ListItem>
</asp:DropDownList>
</div>
<div class="form-group">
<label for="txtMessage">Message</label>
<asp:TextBox ID="txtMessage" runat="server" type="text" CssClass="form-control" TextMode="MultiLine" Rows="5" required />
</div>
<asp:Button ID="btnSubmit" runat="server" Text="Send" CssClass="btn btn-primary pull-right" />
</form>
编辑:不确定这是否会有所不同,但相关网页会引用母版页。
答案 0 :(得分:2)
你的代码没有在后面的代码中调用你的事件,缺少在他的按钮中引用事件,例如:
<asp:Button ID="btnSubmit" runat="server" Text="Send" CssClass="btn btn-primary pull-right" OnClick="btnSubmit_Click" />
答案 1 :(得分:1)
您应该只拥有一组表单标签 - 所以打开和关闭。
如果表单中有表单会破坏您的功能。
如果您仍想使用引导样式,可以使用div标签替换表单标签。
答案 2 :(得分:0)
我使用的是Razor,而不是网络表单,所以这在语法上可能有些偏差,但请尝试使用
<asp:input type="submit" ... />
通过这种方式,您明确告诉按钮是要提交表单。