2016-05-14 109 views
0

實際上,逗號在文本框中完美執行。 12345 = 12345 但是我的提交按鈕無法正常工作很好,當我與我的文本框聲明的javascrip:文本框中的自動逗號

<asp:TextBox ID="txtProductPrice" runat="server" class="form-control" MaxLength ="6" onkeyup ="javascript:this.value=Comma(this.value);"></asp:TextBox> 

這裏是我的按鈕代碼:

protected void btnSubmit_Click(object sender, EventArgs e) 
    { 
     if (uploadProductPhoto.PostedFile != null) 
     { 
      SaveProductPhoto(); 

      ShoppingCart k = new ShoppingCart() 
      { 
       ProductName = txtProductName.Text, 
       ProductImage = "~/ProductImages/" + uploadProductPhoto.FileName, 
       ProductPrice = txtProductPrice.Text, 
       ProductDescription = txtProductDescription.Text, 
       CategoryID = Convert.ToInt32(ddlCategory.SelectedValue), 
       TotalProducts = Convert.ToInt32(txtProductQuantity.Text) 
      }; 
      k.AddNewProduct(); 
      ClearText(); 
      Label2.Text = "Product Added!"; 
      //Response.Redirect("AddNewProduct.aspx?alert=success"); 
     } 
     else 
     { 
      Response.Write("<script>alert('Please upload photo');</script>"); 

的代碼完成(「產品附加值「正在顯示),但是,該產品並未實際添加。它不在數據庫或任何地方。對此有何技巧?

這裏是k.AddNewProduct();

ALTER PROCEDURE [dbo].[SP_AddNewProduct] 
(
@ProductName varchar(300), 
@ProductPrice varchar(500), 
@ProductImage varchar(500), 
@ProductDescription varchar(1000), 
@CategoryID int, 
@ProductQuantity int 
) 

AS 
    BEGIN 
     BEGIN TRY 

      Insert into products 
      values 
      (@ProductName, 
      @ProductDescription, 
      @ProductPrice, 
      @ProductImage, 
      @CategoryID, 
      @ProductQuantity 
      ) 

    END TRY 

    BEGIN CATCH 

     PRINT ('Error Occured') 
    END CATCH 
END 
+0

什麼是ProductPrice在DB類型? –

+0

varchar sir @Idanb –

+0

你調試過'k.AddNewProduct()'來看看那裏發生了什麼嗎?你沒有從數據庫中得到任何錯誤? –

回答

0

我有JS通過使用簡單的正則表達式

function Comma(Num) { 
var parts = Num.toString().split("."); 
parts[0] = parts[0].replace(/\B(?=(\d{3})+(?!\d))/g, ","); 
return parts.join("."); 
} 

,如果你還需要有小數的數字支持,然後用下面的代碼

function numberWithCommas(n) { 
var parts=n.toString().split("."); 
return parts[0].replace(/\B(?=(\d{3})+(?!\d))/g, ",") + (parts[1] ? "." + parts[1] : ""); 
} 
+0

謝謝先生。請參閱編輯的問題 –

相關問題