1、我做的是一个入库订单扫描,页面上有一个TextBox文本框,现在我要根据文本框得到的订单号,得到订单号之后,我敲回车会自动选择里面的内容;选择之后我手动输入一个订单号后,在敲回车,在敲回车同时,让第一条记录保存在表中,第二条记录自动显示出来。
2、希望大家给予帮助!要有例子,具体一点,我没做过扫描这是第一次!最好有具体的代码。。。
------解决方案--------------------------------------------------------
群主啊,跑这来了,等下啊,铁匠个例子给你!
------解决方案--------------------------------------------------------
我是这么做的,希望对你有帮助
1.
<asp:TextBox ID="tbCon" runat="server" CssClass="pin" onkeydown="EnterTextBox(event, this);" ToolTip="输入完成后回车添加"></asp:TextBox>
2.js:
function EnterTextBox(event, obj)
{
if(event.keyCode == 13&&!isNull(obj.value))
{
if(!isNull(obj.value))
{
$("btnSure").click();
}
}
}
3.cs:
/// <summary>
/// 条形码添加
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnSure_Click(object sender, EventArgs e)
{
string strSku = FunLibrary.ChkInput(tbCon.Text.Trim());
DataTable dt = GridViewSource;
DataTable dtgds = DALCommon.GetDataList("ck_goods", "", ddlSchFld.SelectedValue + "='" + strSku + "'").Tables[0];
decimal dprice = 0;
decimal ddis = 1;
string strprice = "零售价";
if (hfCusID.Value != "")
{
DataTable dtcus = DALCommon.GetDataList("ks_customer", "Price,Dis", " [ID]=" + hfCusID.Value).Tables[0];
if (dtcus.Rows.Count > 0)
{
if (dtcus.Rows[0]["Price"].ToString() != "")
{
strprice = dtcus.Rows[0]["Price"].ToString();
decimal.TryParse(dtcus.Rows[0]["Dis"].ToString(), out ddis);
if (ddis == 0)
ddis = 1;
}
}
}
string str = "$('" + tbCon.ClientID + "').select();";
if (dtgds.Rows.Count > 0)
{
CollectData();
for (int i = 0; i < dtgds.Rows.Count; i++)
{
switch (strprice)
{
case "零售价": dprice = decimal.Parse(dtgds.Rows[i]["PriceDetail"].ToString()); break;
case "进货价": dprice = decimal.Parse(dtgds.Rows[i]["PriceCost"].ToString()); break;
case "内部价": dprice = decimal.Parse(dtgds.Rows[i]["PriceInner"].ToString()); break;
case "预设价1": dprice = decimal.Parse(dtgds.Rows[i]["PriceWholesale1"].ToString()); break;
case "预设价2": dprice = decimal.Parse(dtgds.Rows[i]["PriceWholesale2"].ToString()); break;
case "预设价3": dprice = decimal.Parse(dtgds.Rows[i]["PriceWholesale3"].ToString()); break;
default: dprice = decimal.Parse(dtgds.Rows[i]["PriceDetail"].ToString()); break;
}
DataRow tr = dt.NewRow();
tr[0] = dtgds.Rows[i]["StockName"].ToString();
tr[1] = dtgds.Rows[i]["GoodsNO"].ToString();
tr[2] = dtgds.Rows[i]["_Name"].ToString();
tr[3] = dtgds.Rows[i]["Spec"].ToString();
tr[4] = dtgds.Rows[i]["ProductBrand"].ToString();
tr[5] = dtgds.Rows[i]["Unit"].ToString();
tr[6] = 1;
tr[7] = dprice;
tr[8] = ddis;
tr[9] = Convert.ToDouble(dprice * ddis).ToString("#0.00");