<input type="hidden" id="GroupId" runat="server" style="font-size:1px;width:100px;" />        var groupid=  document.getElementById("GroupId").value;groupid结果为2.011114921323e24 这种形式,我想取到正常的字符串格式2011149213231123232323
求解决!!!

解决方案 »

  1.   

    本帖最后由 net_lover 于 2011-09-12 12:12:28 编辑
      

  2.   

    <input id="x" value="2011149213231123232323" />groupid = document.getElementById("x").value;这样得到的是正确的
      

  3.   

     var groupid= eval(document.getElementById("GroupId").value);
    试试看
      

  4.   


    我是用<%#Eval("GroupId")%>从gridview获取当参数传给到js给<input type="hidden" id="GroupId" runat="server" style="font-size:1px;width:100px;" />赋的value,是不是<%#Eval("GroupId")%>获取的就是那种形式啊?那我该怎么办呢?
      

  5.   

    顶顶顶顶!应该是需要format个什么格式,我不会啊,查不到啊,救命啊!!!!!
      

  6.   

    本帖最后由 net_lover 于 2011-09-12 19:36:23 编辑
      

  7.   

    在gridview里时还是正常的一连串数字21001090239102391023,可用eval一取是不是就被格式化成指数形式了,能eval()时不让格式化,或者以正常形式显示啊
      

  8.   


    是varchar(30)类型的,我这种类型不就是字符串吗,而且在gridview中显示的事正确的,一获取就变指数了,你上面那种方法结果是2011912123529200000000000,后面都变成零了,
      

  9.   

    Session["Id"].ToString()是不是在网站的每个页面都取得到啊,为什么放前台当参数有时候能取到有时候取不到?
      

  10.   

    double Value=2.011114921323e24;string str=((long)Value).ToString();
      

  11.   


    那个值我用double.parse转化不成double类型的
      

  12.   

    本帖最后由 net_lover 于 2011-09-13 09:39:09 编辑
      

  13.   

    你错误的原因应该是这样导致的,比如赋值的方法
    应该是
    <div onclick="document.getElementById('GroupId').value='<%#Eval("GroupId") %>'">点击赋值: </div>而不应该是
    <div onclick="document.getElementById('GroupId').value=<%#Eval("GroupId") %>">点击赋值: </div>需要加引号变成字符串,完整的例子
      <form id="form1" runat="server">
      <asp:Repeater ID="Repeater1" runat="server">
        <ItemTemplate>
          <div onclick="document.getElementById('GroupId').value='<%#Eval("GroupId") %>'">点击赋值: </div>
        </ItemTemplate>
      </asp:Repeater>
      <input type="hidden" id="GroupId" runat="server" style="font-size: 1px; width: 100px;" />
      <input type="button" value="得到值" onclick="alert(document.getElementById('GroupId').value)" />
      </form>
      

  14.   

    孟哥是这样的,可能我前面没说清:
    <input type="button" id="btnJoin" value="加入" style="width: 50px; height: 22px; font-size: 1em;"
    onclick="PopDiv(<%# Eval("GroupId")%>)" />function PopDiv(groupid) {
    ------断点
        document.getElementById("mybg").style.opacity = "0.5";
        document.getElementById("mybg").filter = "Alpha(opacity=50)";
        document.getElementById("GroupId").value = groupid;
        document.getElementById("mybg").style.display = "block";
        document.getElementById("mygroup").style.display = "block";
    }
    从断点处看参数groupid的值都已经是指数形式了,说明是 Eval("GroupId")取的有问题,不过我其他页面有个  <input type="button" value="新建组" style="font-size: 1em; width: 50px; height: 22px"
      onclick="newGroup(<%# Session["Id"].ToString() %>,<%#Eval("PubId")%>)" />这样当参数就没问题。顺便强调下,我的数据原本没问题,因为在gridview中显出的就是一串2012398374923948239479283,而不是指数形式
      

  15.   

    正确的写法
    onclick="PopDiv('<%# Eval("GroupId")%>')" />
      

  16.   

    谢谢孟大哥,刚那个解决了。
    还有个类似的问题
    <input id="btnQuitGroup" type="button" value="退 组" onclick="QuitGroup(<%# Session["Id"].ToString() %>)" />
    我想当参数传进去,可结果为空,就是看源文件里是
    <input id="btnQuitGroup" type="button" value="退 组" onclick="QuitGroup()" />
    是不是也式格式的问题?
    不过我加上单引号这次不行了
      

  17.   

    <input id="btnQuitGroup" type="button" value="退 组" onclick="QuitGroup(<%= Session["Id"].ToString() %>)" />
      

  18.   

    本帖最后由 net_lover 于 2011-09-13 14:17:39 编辑