На самом базовом уровне вы, вероятно, захотите сделать что-то вроде этого:
<asp:Literal ID='testResultId' runat='server'></asp:Literal>
<button class="submitBtn"
onclick="javascript:JsUtils.submit_answer('<%#Eval('QuestionID')%>,
'<%=testResultID.Text%>');">Submit Answer</button>
Однако это, вероятно, далеко от идеала. Вы говорите, что буквальное значение «установлено в коде позади» - почему? Он будет отображаться на экране, если вы только пытаетесь передать данные с сервера на клиент с помощью этой функции, то зачем вообще их визуализировать, просто снова сослаться на нее для создания вызова этой функции? Просто добавьте его непосредственно к вашей функции, например, как то так:
<button class="submitBtn"
onclick="javascript:JsUtils.submit_answer('<%#Eval('QuestionID')%>,
'<%=SomeProperty%>');">Submit Answer</button>
где SomeProperty
- это строковое свойство вашей страницы, которое возвращает значение, которое вы устанавливаете для этого литерала.