在按钮点击事件中,我正在编写此代码。(代码隐藏)。我知道按钮点击事件
protected void button_click()
{
string s1 = "Computer";
StringBuilder sb = new StringBuilder();
sb.Append(@"<script language='javascript'>");
sb.Append("document.write('<table><tbody>')";);
sb.Append("document.write('<tr><td>Information</td></tr>')";);
if(s1 == "Computer" )
{
sb.Append("<tr><td>s1</td></tr>");
}
sb.Append("document.write('</tbody></table>')";);
sb.Append(@"</script>");
}
它正在工作但我希望s1的值不是s1.I知道javascript是客户端编程。我在按钮点击事件中写了这个函数。如何将计算机s1的值传递给表格的单元格
答案 0 :(得分:4)
简单地
sb.Append("document.write('<tr><td>" + s1 + "</td></tr>');");
答案 1 :(得分:3)
你试过吗
if(s1 == "Computer" )
{
sb.Append("<tr><td>"+s1+"</td></tr>");
}
答案 2 :(得分:3)
您可以将此行更改为:
sb.Append("<tr><td>" + s1 + "</td></tr>");
答案 3 :(得分:1)
您的代码与您提出的问题有点无关。您的错误已由先前的答案修复。但我会尝试进一步扩大asnwer。如果您希望将某些值从C#传递给JavaScript,则会有不同的方法。
1)您可以在代码隐藏文件中创建受保护的方法,并从.aspx文件中调用它,例如
<强> my.aspx 强>
<script type="text/javascript">
var x = '<%= GetMyValue() %>';
DoFooWithX(x);
</script>
<强> my.aspx.cs 强>
protected string GetMyValue()
{
return "example";
}
2)如果您希望在页面加载完成后执行一些JavaScript,您也可以从代码隐藏中执行此操作
<强> my.aspx.cs 强>
protected void Page_Load(object sender, EventArgs e)
{
string myScript = string.Format("myVar = '{0}';", GetMyVarValue());
ScriptManager.RegisterStartupScript(this, this.GetType(), "MyVarSetter", myScript, true);
}
private string GetMyVarValue()
{
return "example";
}