【问题标题】:Ampersand and number sign (& and #)和号和数字符号(& 和 #)
【发布时间】:2017-03-23 03:30:19
【问题描述】:

每当我插入数据时,与号和数字符号不会存储在 MS SQL 中(它会在与号和数字符号之后剪切下一个单词)。我在我的 MS SQL Server 2014 上使用NVARCHAR 列。

例如,如果我输入“AJ & J”,搜索后输出将只有“AJ”。

这是我的 JavaScript 函数:

function GGPFUNCTION_AUTOSAVEHEADER() {
  var OBJECTS = object;
  var EVENTPARAMETER = 'INSERTUPDATE';
  $.ajax({
    type: "POST",
    url: "../../../MODELS/86/MAINTENANCE/MODEL_86_SHIPPINGLINES.php?SHIPPINGLINENO=" + $("#SHIPPINGLINENO").val() +
      '&SHIPPINGLINENAME=' + $("#SHIPPINGLINENAME").val() +
      '&ADDRESS=' + $("#ADDRESS").val() +
      '&CONTACTPERSON=' + $("#CONTACTPERSON").val() +
      '&DESIGNATION=' + $("#DESIGNATION").val() +
      '&PHONENO=' + $("#PHONENO").val() +
      '&CONTACTNO=' + $("#CONTACTNO").val() +
      '&EMAILADDRESS=' + $("#EMAILADDRESS").val() +
      '&BLOCKED=' + $("#BLOCKED").val() +
      '&NOTEPADNO=' + notePadNo +
      '&USERNAME=' + username +
      '&OBJECTS=' + '<?php echo $_GET['
    objectno '];?>' +
    '&EVENTPARAMETER=' + EVENTPARAMETER,
    data: "",
    success: function(data) {
      $.each($.parseJSON(data), function() {


        if (this.ERROR.length != 0) {
          parent.test_error(this.ERROR);
          //$("#SHIPPINGLINENO").val('');
          $("#SHIPPINGLINENO").focus();

        } else {
          if (this.NEWMODE.length != 0) {
            $("#SHIPPINGLINENO").focus();
          }
          if (this.EXISTING.length != 0 && newMode == true) {
            newMode = false;
            searchMode = true;
            GGPFUNCTION_SEARCHHEADER_DOCUMENTNO(this.SHIPPINGLINENO);

          }
          if (this.EXISTING.length == 0 && this.SHIPPINGLINENO.length != 0) {
            $("#SHIPPINGLINENO").val(this.SHIPPINGLINENO);
          }
          newMode = false;
          searchMode = true;
        }

      });
    }
  });
}

【问题讨论】:

  • encodeURIComponent 是你所追求的
  • 我应该把它放在哪里?因为我只想要航运公司名称和电话号码。
  • 你应该在需要的地方使用它——你读过链接了吗?
  • 我建议你说hash而不是数字符号
  • 美国人称它为英镑符号……这有关系吗? :p

标签: javascript php jquery sql-server json


【解决方案1】:

您应该使用 jQuery 的 jQuery.param() 函数将对象转换为查询字符串。这将为您完成所有转义。

var obj = {
  "SHIPPINGLINENO": $("#SHIPPINGLINENO").val(),
  "SHIPPINGLINENAME": $("#SHIPPINGLINENAME").val(),
  "ADDRESS": $("#ADDRESS").val(),
  "CONTACTPERSON": $("#CONTACTPERSON").val(),
  "DESIGNATION": $("#DESIGNATION").val(),
  "PHONENO": $("#PHONENO").val(),
  "CONTACTNO": $("#CONTACTNO").val(),
  "EMAILADDRESS": $("#EMAILADDRESS").val(),
  "BLOCKED": $("#BLOCKED").val(),
  "NOTEPADNO": notePadNo,
  "USERNAME": username,
  "OBJECTS": '<?php echo $_GET['objectno'];?>',
  "EVENTPARAMETER": EVENTPARAMETER
}
var querystring = $.param(obj);

现在您有了一个查询字符串,可以在 URL 的末尾使用它:

url: "../../../MODELS/86/MAINTENANCE/MODEL_86_SHIPPINGLINES.php?" + querystring

【讨论】:

    猜你喜欢
    • 2019-01-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-01-28
    • 2015-02-17
    • 1970-01-01
    • 2015-01-28
    • 1970-01-01
    相关资源
    最近更新 更多