有以下三行代码:
string []quesAndAnswer = qAA.Split('_');
string result = "";
Response.Write("<script language = 'javascript'>window.prompt('请输入问题的答案-->" + quesAndAnswer[0] + "','" + result + "')</script>");我想用result来接收用户输入的值,但是用户输入以后还总是"",请问各位是哪里出问题了,请问该如何解决呀?谢谢各位了!

解决方案 »

  1.   

    var tempA = window.prompt
      

  2.   

    <script language="javascript">
    <!--
    var aaa= window.prompt("Input a answer",'123');
    alert (aaa);
    -->
    </script>
      

  3.   

    楼主要分清楚前台代码和后台代码, js的值不可能直接在后台读取到的哦。Response.Write("<script language = 'javascript'> var mm = window.prompt('请输入问题的答案-->" + quesAndAnswer[0] + "','" + result + "') ; alert(mm);</script>");这样可以看出来,值读取到了,可是要送到后台来就要使用别的招式才行了。
      

  4.   

    我不是在html里写是在asp.net里写的,各位可不可以说得详细一些!麻烦各位了.
      

  5.   

    Response.Write表示在页面中写入一些东西,并不会执行。 Response.Write("<script 表示在页面中增加了一个js代码段,就像手工写的一样,但是不会运行这个代码。这段代码等下载到用户的浏览器之后才会由IE进行解释和运行,于是才能弹出对话窗口来。因为JS代码实在IE执行的, CS脚本是在服务器运行的,所以不能直接拿到返回值。这个功能有其他的很多实现方式,比如:
    1. 使用js的showdialog打开一个新的页面做对话窗。参数使用页面之间的传值方式进行处理。 
    window.showModalDialog(url,window,"dialogHeight: "+iHeight+"px; dialogWidth: "+iWidth+"px; dialogTop: "+iTop+"; dialogLeft: "+iLeft+"; resizable: no; status: no;scroll:no");2. 把返回值写入一个hidden字段中,然后提交页面。从request中取返回值。3. 在JS中利用Ajax把参数发送到后台。