2011-12-01 61 views
0

我使用jQuery的Append将值添加到列表框中。我只需在HTML中编写一个选项,然后将其添加到按钮上即可。如何从选择(ASP.NET列表框)获取jquery更新值

现在,一旦页面发布,我想将这些值存储在我的数据库中。但是,好像列表框是空的。当我查看源代码时,它也显示为空。我想我不完全了解客户端概念。

如何将这些不存在的值存入我的代码隐藏?

这是附加功能:

function AddGPWNum() { 
var TestNum = $("#<%= TestNumText.ClientID %>").val(); 
if (TestNum.length == 0) 
    return false; 
var NewString = TestNum.split("<"); 
NewString = NewString.join("&lt;"); 

$("#<%= TestNumText.ClientID %>").val(""); 
TestNum = '<option value="' + NewString + '">' + NewString + '</option>'; 
$("#<%= TestNumList.ClientID %>").append(TestNum); 

$("#<%= HiddenNumbers.ClientID %>").val() = $("#<%= TestNumList.ClientID %> > option").map(function() { return this.value }).get().join(','); 

return false;} 

回答

1

asp.net将只能看到附加价值,如果他们是由用户选择,因为它们是那么的Request集合的一部分返回。

如果jQuery将值添加到列表框中,那么如果您在页面上执行“查看源代码”,您将不会看到它们,因为它们已被动态添加到DOM。如果您使用类似Firebug的工具查看源代码,则可以为它们服务。

如果您想查看您在代码隐藏中添加的值,您可以将添加的值添加到隐藏字段以及列表框中,隐藏字段的值将在代码中可用 - 在后面,你可以解析这些值。

的jQuery类似这样应该写一个逗号分隔的列表框的值的列表到一个隐藏字段 -

$("#yourhiddenfieldid").val($("#yourlistboxid > option").map(function() {return this.value}).get().join(',')); 
+0

我不完全确定如何做到这一点。我可以从列表框中获取所有值,然后将它们写入隐藏字段,而不是只添加一个值,用户正在写入?如果我不覆盖整个字符串,并使用列表框中的所有选项,如何删除单个特定条目? – Nicolai

+0

@Nicolai - 我已经添加了一些jQuery的答案。希望能帮助到你! – ipr101

+0

谢谢,这很有帮助,但我还是不太明白。如果我将地图命令添加到我的添加按钮的函数中,它会导致回发。我认为这与回报有关。最后,我的函数返回false,以防止回发。我可以在添加函数中保留地图命令,并防止回发?或者当我储存时我需要做地图吗? – Nicolai

0

您可以使用隐藏字段来存储值将其添加到列表框中。然后从代码隐藏你可以让他们把它存储到数据库。

相关问题