2015-11-06 28 views
0

我要綁定asp.net文本控件,所以我用C#代碼完成類似下面..如何在javascript或jquery中追加asp.net文字控件?

private void GetMessages() 
     { 
      try 
      { 
       int cntr = 0; //toggle counter for alternating color 
       string username = lblUserName.Text; 


       if (connection.State == ConnectionState.Closed) 
        connection.Open(); 
       command = new SqlCommand(); 
       command.CommandText = "Get_Messages"; 
       command.CommandType = CommandType.StoredProcedure; 
       command.Parameters.AddWithValue("@roomId", lblRoomId.Text); 
       command.Connection = connection; 
       da = new SqlDataAdapter(command); 
       ds = new DataSet(); 
       da.Fill(ds); 

       if (connection.State == ConnectionState.Open) 
        connection.Close(); 
       command.Dispose(); 

       if (ds.Tables[0].Rows.Count != 0) 
       { 
        StringBuilder sb = new StringBuilder(); 

        int i = (ds.Tables[0].Rows.Count - 1); 

        for (int j = 0; j <= i; j++) 
        { 
         string personName = ds.Tables[0].Rows[j]["Username"] == null ? "" : ds.Tables[0].Rows[j]["Username"].ToString(); 
         string gender = ds.Tables[0].Rows[j]["Sex"] == null ? "" : ds.Tables[0].Rows[j]["Sex"].ToString(); 
         string message = ds.Tables[0].Rows[j]["Text"] == null ? "" : ds.Tables[0].Rows[j]["Text"].ToString(); 

         if (cntr == 0) 
         { 
          if (username == personName) 
          { 
           sb.Append("<div style='padding: 10px;text-align:right'>"); 
          } 
          else 
          { 
           sb.Append("<div style='padding: 10px;'>"); 
          } 
          cntr = 1; 
         } 
         else 
         { 
          if (username == personName) 
          { 
           sb.Append("<div style='background-color: #EFEFEF;padding: 10px;text-align:right'>"); 
          } 
          else 
          { 
           sb.Append("<div style='background-color: #EFEFEF;padding: 10px;'>"); 
          } 
          cntr = 0; 
         } 

         lblUserNames.Text = "<span style='color: Blue;'><b line-height:22px>" + personName + "</b></span>"; 
         lblUserNames.Visible = true; 

         if (gender.ToLower() == "m") 
         { 
          if (username == personName) 
          { 
           sb.Append(message + "</div>"); 
          } 
          else 
          { 
           sb.Append("<img src='Images/manIcon.gif' style='vertical-align:middle;' alt=''> " + lblUserNames.Text + " " + message + "</div>"); 
          } 
         } 

         else 
         { 
          if (username == personName) 
          { 
           sb.Append(message + "</div>"); 
          } 
          else 
          { 
           sb.Append("<img src='Images/womanIcon.gif' style='vertical-align:middle' alt=''> " + lblUserNames.Text + " " + message + "</div>"); 
          } 
         } 
        } 
        litMessages.Text = sb.ToString(); 
        lblUserNames.Visible = false; 
       } 
       else 
       { 
        lblUserNames.Visible = false; 
       } 
      } 
      catch (Exception ex) 
      { 
       ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "alert", "alert('Exception Message: " + ex.Message.Replace("'", "").Replace("\"", "") + "');", true); 
      } 
     } 

而是試圖做JavaScript和JSON,但它不是結合,其中,因爲我得到的數據相同的成功。在那裏我得到的錯誤無法理解,所以請任何人能幫助我把它綁定JavaScript端..

<script type="text/javascript"> 
      window.setInterval(GetRoomMessages, 10000); 

      function GetRoomMessages() { 
       var cntr = 0; 
       var html = []; 
       var roomId = getCookie('roomId'); 
       function getCookie(name) { 
        var nameEQ = name + "="; 
        var ca = document.cookie.split(';'); 
        for (var i = 0; i < ca.length; i++) { 
         var c = ca[i]; 
         while (c.charAt(0) == ' ') c = c.substring(1, c.length); 
         if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length, c.length); 
        } 
        return null; 
       } 

       var username = getCookie('userName'); 
       function getCookie(name) { 
        var nameEQ = name + "="; 
        var ca = document.cookie.split(';'); 
        for (var i = 0; i < ca.length; i++) { 
         var c = ca[i]; 
         while (c.charAt(0) == ' ') c = c.substring(1, c.length); 
         if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length, c.length); 
        } 
        return null; 
       } 

       $.ajax({ 
        type: "POST", 
        contentType: "application/json; charset=utf-8", 
        url: "temp.aspx/BindShopClothInfo", 
        data: "{'roomId':'" + roomId + "'}", 
        dataType: "json", 
        success: function (response) { 
         var sb = ""; 

         for (var i = 0; i < response.d.length; i++) { 

          var personName = response.d[i].Username; 
          var gender = response.d[i].Sex; 
          var message = response.d[i].Text; 

          if (cntr == 0) { 

           if (username == personName) { 

            sb += ("<div style='padding: 10px;text-align:right'>"); 
           } 
           else { 
            sb += ("<div style='padding: 10px;'>"); 
           } 
           cntr = 1; 
          } 
          else { 
           if (username == personName) { 
            sb += ("<div style='background-color: #EFEFEF;padding: 10px;text-align:right'>"); 
           } 
           else { 
            sb += ("<div style='background-color: #EFEFEF;padding: 10px;'>"); 
           } 
           cntr = 0; 
          } 

          $("#lblUserNames").val("<span style='color: Blue;'><b line-height:22px>" + personName + "</b></span>"); 
          $("#lblUserNames").prop("visibility", "block"); 

          if (gender.toLowerCase() == "m") { 
           if (username == personName) { 
            sb += (message + "</div>"); 
           } 
           else { 
            var UserNames = $("#lblUserNames").val(); 
            sb += ("<img src='Images/manIcon.gif' style='vertical-align:middle;' alt=''> " + UserNames + " " + message + "</div>"); 
           } 
          } 

          else { 
           if (username == personName) { 
            sb += (message + "</div>"); 
           } 
           else { 
            var UserNames = $("#lblUserNames").val(); 
            sb += ("<img src='Images/womanIcon.gif' style='vertical-align:middle' alt=''> " + UserNames + " " + message + "</div>"); 
           } 
          } 
         } 

         $("#litMessages").append(sb); 
         alert($("#litMessages").val()); 
         //$("#ContentPlaceHolder1_lblProductName").html(Shopp.d[0].ClothName); 

        }, 
        error: function (result) { 
         $("#lblUserNames").prop("visibility", "none"); 
         alert("Error"); 
        } 
       }); 
      } 
    </script> 

回答

0

,而不是「文字」控制使用「標籤」 control..both是同一只顯示文本。