Qualtrics自动完成的答案未在回复中捕获

时间:2015-10-28 14:41:53

标签: javascript jquery autocomplete qualtrics

我在Qualtrics调查中实现了自动完成功能。当用户键入文本框时,将显示包含用户输入文本的项目列表。用户可以选择使用此列表中的项目填充文本框。

但是,当我从列表中选择时,我输入的文本会显示在响应数据中而不是选择中。例如,我输入" A"并选择" Apple。" "苹果"出现在调查文本框中,但是" A"记录在数据中。如果继续编辑输入的文本,则文本框中显示的内容将记录在数据中。但是,我不希望调查对象在他们选择答案后编辑文本。这是Internet Explorer和Chrome中的一个问题。 "苹果"当我使用Firefox回答调查时,会出现在数据中。

我使用了上一个问题的解决方案:Unsolved - Adding Autocomplete with Javascript to Qualtrics,但出现了同样的问题(以及其他问题)。

这是我在Look and Feel,Advanced:

中使用的代码
Qualtrics.SurveyEngine.addOnload(function()
{
    qtrix.addAutoComplete("#QR\\~QID6", [
"Item 1",
"Item 2",
"Item 3",
"Item 3000"
        ]);
});

这是问题的javascript框中的代码:

private ObservableCollection<Inline> _inlineList;

public ObservableCollection<Inline> InlineList
{
  get { return _inlineList; }
  set { Set(() => InlineList, ref _inlineList, value); }
}

private void SendClicked()
{
    InlineList.Add(new Run("This is some bold text") { FontWeight = FontWeights.Bold });
    InlineList.Add(new Run("Some more text"));
    InlineList.Add(new Run("This is some text") { TextDecorations = TextDecorations.Underline });
}

public class BindableTextBlock : TextBlock
{

    public ObservableCollection<Inline> InlineList
    {
        get { return (ObservableCollection<Inline>)GetValue(InlineListProperty); }
        set { SetValue(InlineListProperty, value); }
    }

    public static readonly DependencyProperty InlineListProperty =
        DependencyProperty.Register("InlineList", typeof(ObservableCollection<Inline>), typeof(BindableTextBlock), new UIPropertyMetadata(null, OnPropertyChanged));

    private static void OnPropertyChanged(DependencyObject sender, DependencyPropertyChangedEventArgs e)
    {
        if (e.NewValue == null) return;

        var textBlock = (BindableTextBlock)sender;
        textBlock.Inlines.AddRange((ObservableCollection<Inline>)e.NewValue);
    }
}

    <testRobot:BindableTextBlock  
                                 Width="Auto" Height="Auto" 
                                 InlineList="{Binding InlineList}" >

    </testRobot:BindableTextBlock>

我不熟悉Javascript,而且对Qualtrics中的这种自定义水平还不熟悉。我将不胜感激任何指导或领导。谢谢!

0 个答案:

没有答案