0

我正在尝试使用添加到列表框中的值填充隐藏字段。我收到消息 _delimiter 未声明。所以隐藏字段值将是 123456,651456,654321 等。

<script language="javascript" type="text/javascript">
  function getSelected(source, eventArgs) {
      var s = $get("<%=NameTextBox.ClientID %>").value;

      var opt = document.createElement("option");
      opt.text = s.substring(s.length - 10);
      opt.value = s.substring(s.length - 10);

      document.getElementById('<%= Listbox.ClientID %>').options.add(opt);
      $hidlistbox = $('#<%= hidListBox.ClientID %>');
      $textbox = $('#<%= NameTextBox.ClientID %>');
      $hidlistbox.val($hidlistbox.val() + $textbox.val() + '<%= _delimiter %>');
      $textbox.val('');
  }

  Private Sub PopulateListBox()
    Dim _delimiter As Char = ","c

    If NameTextBox.Text = "" Then

    Else
        ' Get value from text box
        Dim textBoxValue As String = Me.NameTextBox.Text

        ' Create new item to add to list box
        Dim newItem As New ListItem(textBoxValue)

        ' Add item to list box and set selected index
        Listbox.Items.Add(newItem)
        Listbox.SelectedIndex = Listbox.Items.Count - 1
        hidListBox.Value = _delimiter.ToString


    End If

End Sub
4

1 回答 1

1

在您的 javascript 中,您正在尝试评估服务器端_delimiter变量,这似乎是该PopulateListBox方法的私有变量。
您应该_delimiter在后面的代码中定义一个公共属性,或者仔细检查您是否真的需要在 javascript 中对其进行评估。

于 2013-09-16T14:51:10.310 回答