C# 如何从下拉列表中删除值,使其不在提交页面上?
我在aspx网络表单上有一个文本框和一个下拉列表。用户将键入一个数字,然后提交,下拉列表将填充与键入的单词相关的值。如果用户在文本框中键入新术语,我希望截断下拉列表,当用户提交时,它将只提交文本,而不提交下拉列表值(实际上空字符串是可以的)。当用户在下拉列表中导航时,页面将使用与文本和下拉值相关的数据进行更新。 我正在使用以下jQueryC# 如何从下拉列表中删除值,使其不在提交页面上?,c#,asp.net,jquery,webforms,postback,C#,Asp.net,Jquery,Webforms,Postback,我在aspx网络表单上有一个文本框和一个下拉列表。用户将键入一个数字,然后提交,下拉列表将填充与键入的单词相关的值。如果用户在文本框中键入新术语,我希望截断下拉列表,当用户提交时,它将只提交文本,而不提交下拉列表值(实际上空字符串是可以的)。当用户在下拉列表中导航时,页面将使用与文本和下拉值相关的数据进行更新。 我正在使用以下jQuery function removeCoverageOptions() { $("#ctl00_DefaultContent_txtClaimNumber"
function removeCoverageOptions() {
$("#ctl00_DefaultContent_txtClaimNumber").keypress(
function() {
$("#ctl00_DefaultContent_ddCovCert").find("option").remove();
}
);
}
我正在$(function(){removecovergeoptions();})上运行它代码>
它确实会删除UI中的选项项,但是当我提交表单并调试时。。。页面内加载
var claimNum = txtClaimNumber.Text;
var certSeq = ddCovCert.SelectedValue;
claimNum是正确的新键入文本,但certSeq仍然具有“999”,即最后选择的值。关于我如何纠正这一点有什么想法吗。当我更改claimNum时,我希望certSeq是一个空字符串。这可能是viewstate的问题吗
谢谢,
~ck在圣地亚哥听起来像是一个viewstate问题。为什么不将EnableViewState设置为false,因为看起来您什么都不需要它。这将确保DropDownList在回发到服务器时不会包含任何内容。DropDownList控件需要ViewState来填充SelectedValue属性。是的,我尝试过。有时我确实需要所选的值,因为我需要检索与文本和下拉列表值相关的数据。@Hcabnettek您有没有把它整理好?您可以更改文本框,以便在文本框数据更改时使用客户端脚本将所选值设置为空,这样,当帖子发生且文本框已更改时,dropdownlist将始终具有空选择。