2 davidsher zhou davidsher_zhou 于 2016.04.19 16:19 提问

怎么样通过dropdownlist将值js中的变量并且重新画图

部分aspx页面

<asp:TextBox ID="txt" runat="server" CssClass="input normal" datatype="s0-10" sucmsg=" "></asp:TextBox>
 <asp:DropDownList ID="ddlExpressStatus" runat="server" AutoPostBack="True" onselectedindexchanged="ddlExpressStatus_SelectedIndexChanged">
              <asp:ListItem Value="0" Selected="True">选择数据月份</asp:ListItem>
              <asp:ListItem Value="1">1月份</asp:ListItem>
              <asp:ListItem Value="2">2月份</asp:ListItem>
              <asp:ListItem Value="3">3月份</asp:ListItem>
              <asp:ListItem Value="4">4月份</asp:ListItem>
              <asp:ListItem Value="5">5月份</asp:ListItem>
              <asp:ListItem Value="6">6月份</asp:ListItem>
              <asp:ListItem Value="7">7月份</asp:ListItem>
              <asp:ListItem Value="8">8月份</asp:ListItem>
              <asp:ListItem Value="9">9月份</asp:ListItem>
              <asp:ListItem Value="10">10月份</asp:ListItem>
              <asp:ListItem Value="11">11月份</asp:ListItem>
              <asp:ListItem Value="12">12月份</asp:ListItem>
            </asp:DropDownList> 

上面选择相应的月份下面的副标题也相应的改变并且d3.json的图表重新画,要求页面不刷新。

 <script type="text/javascript">
 window.onload = function(){
        document.getElementById("ddlExpressStatus").onchange = function () {
            document.getElementById("txt").value = this.value;
        }
    }

    //读取JSON数据
    d3.json(""+word.json+"", function (error, data)
    {
        var yue = <%=ddlExpressStatus.SelectedValue%>;
var dataset=[];
var xMark=[];
data.forEach(function(d)
{
dataset.push(d.revenue);
str=d.postdate;
str = str.replace(/-/g,"/");
var date = new Date(str);
xMark.push(date.getDate());
});
var chart=new magicdataLine(10,10);
chart.w=1000;
chart.title = "从JSON中读取的数据";
chart.subTitle = "时间:2016年" + yue + "月 指标名称:订单每日销售额";
chart.dataset=[dataset];
chart.xMarks=xMark;
chart.lineNames = ["日期"];
chart.draw();
    });

</script>

dropdownlist改变时候textbox中的值改变了但是这个月份不改啊。
图片说明

我这个问题是yue只能获得第一个值,副标题不随着dropdownlist改变而改变,求大神帮忙解答!!

2个回答

caozhy
caozhy   Ds   Rxr 2016.04.20 05:22

dropdownlist是服务器控件,你可以在你的服务器端的dropdownlist_change事件中重新绑定下chart

davidsher_zhou
davidsher_zhou 我按照你的这个思路去改了下成功了,感谢感谢
一年多之前 回复
davidsher_zhou
davidsher_zhou 我按照你的这个思路去改了下成功了,感谢感谢
一年多之前 回复
davidsher_zhou
davidsher_zhou 我按照你的这个思路去改了下成功了,感谢感谢
一年多之前 回复
davidsher_zhou
davidsher_zhou 我已经试出来了,把d3.json()放到,function函数里面就行了。不过每点击一次就会出来一个图表,请问js怎么删除上一次的图表啊?让每次点击只出现一次上次的删除掉。
一年多之前 回复
CSDNXIAOD
CSDNXIAOD   2016.04.19 21:01

JS画图
js画图
----------------------biu~biu~biu~~~在下问答机器人小D,这是我依靠自己的聪明才智给出的答案,如果不正确,你来咬我啊!

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!