我想做的就是用 javascript 编写这个字符串 "runat='server'";
。并在这里使用它:
var dropdown = "<td><asp:DropDownList ID='drpid' runat='server' DataSourceID='SqlDataSource1' DataValueField='Id' DataTextField='Text'></asp:DropDownList></td>"
错误是这样的:SyntaxError: missing ) after argument list
最佳答案
ASP.NET 正在您的字符串定义中呈现控件。
<asp:DropDownList>
的输出包含换行符、双引号和对 javascript 函数的引用,因此它肯定会使您的 javascript 字符串变得一团糟。
相反,让 asp.net 在其他地方呈现下拉列表(它甚至可以在不可见的 div 中),如下所示:
<div id="hiddenthingContainer" style="display:none;">
<asp:dropdownlist /> ... etc
</div>
然后,要么使用 document.getElementById("hiddenthingContainer")
或使用 jQuery 或您喜欢的任何 dom 库来获取元素。
一旦你拥有它,获取隐藏容器的内容就变得很简单了,很快,你的字符串就出现了。
使用 jQuery 的例子:
<div id="hiddenthingContainer" style="display:none">
<asp:DropDownList ID='drpid' runat='server' DataSourceID='SqlDataSource1' DataValueField='Id' DataTextField='Text'></asp:DropDownList>
</div>
<script type="text/javascript">
$(document).ready(function(){
var dropdown = $("#hiddenthingContainer").html()
});
</script>
关于javascript - 在 javascript 字符串中写入 runat ="server",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33429786/