我有一个临时数据,我希望在javascript中接收,然后想要将其分配给所选的标签?我该怎么办?
var langid ="<% Tempdata["something"] %>";
$('#tabs').tabs('select', 'tabs' - langid);
答案 0 :(得分:0)
我认为问题是你错过了一个结束括号。
var langid = <%: Tempdata["something"] %>;
$('#tabs').tabs('select', 'tabs' - langid);
我不确定设置标签文本的语法是什么。
答案 1 :(得分:0)
另一件要注意的事情是在第二行
var langid = <%: Tempdata["something"] %>;
$('#tabs').tabs('select', 'tabs-' + langid);
答案 2 :(得分:0)
<script>
alert('<%=TempData["something"] %>');
alert('<%=ViewData["someelse"]%>');
</script>
btw TempData使用Session,所以你可能想坚持使用ViewData
答案 3 :(得分:0)
通常TempData
是您在控制器之间传递消息的方法,因此在您的情况下ViewData
更适合,即使使用强类型属性被认为是更好的做法模型。尽管如此,这将有效:
var langid ="<%= ViewData["something"] %>";
$('#tabs').tabs('select', 'tabs' - langid);
您认为内联JavaScript
也不是一个好习惯。如果您以后想要将此代码提取到单独的js文件中,它将会中断。我建议创建一个隐藏字段来存储HTML中的值,并使用jQuery读取它。
在您的视图中:
<input type="hidden" id="yourLangId" value="<%= ViewData["something"] %>" />
在你的js中:
var langid = $("#yourLangId").val();
$('#tabs').tabs('select', 'tabs' - langid);