Ajax不会使用特殊字符的字符串或值

时间:2013-10-21 10:25:15

标签: php ajax jquery

在我的表单中我希望使用项目代码进行FETCH项目描述,例如我将项目描述为24“STUB END 316L SCH10S,其项目代码为STUB316LS10SW,因此当我使用STUB316LS10SW在项目代码字段中搜索该项目的描述时项目代码没有提取,因为在项目描述中我有24“即特殊字符,所以ajax没有提取项目描述..你能帮忙吗

         $(function() {
         function log( message ) {
         $( "<div>" ).text( message ).prependTo( "#log" );
          $( "#log" ).scrollTop( 0 );
         }
        $("#itemcode1").autocomplete({
         source: function( request, response ) {
        $.ajax({
        url: "getProductList.php",
        dataType: "json",
     data: {
      name_startsWith: request.term
      },
     success: function( data ) {
      response($.map( data.geonames, function( item ) {


      return {
      label: item.name + (item.adminName1 ? ", " + item.adminName1 : "") ,
     value: item.nameval,
     value1: item.toponymName,
     price:item.price,
     quantity:item.quantity,
     prodId:item.prodId,
      itemcode:item.itemcode,
    }
    }));
   }
   });
    <table width="100%" border="0" cellpadding="0" cellspacing="0" class="style1">
          <tr>
            <td>Item Code </td>
            <td>&nbsp;</td>
            <td><input  type="text" id="itemcode1" name="itemcode1"  /></td>
          </tr>
          <tr>
        <td width="125">Products/Description</td>
        <td width="10">:</td>
        <td width="175"><input name="productDesc1" type="text"  id="productDesc1"></td>
      </tr>
         <tr>
        <td>&nbsp;</td>
        <td>&nbsp;</td>
        <td>
        <input type="submit" name="submit" value="Create" 
        style="width:100px;" id="crt"></td>
      </tr>

2 个答案:

答案 0 :(得分:1)

将带有特殊字符的值(或所有内容)包含到encodeURI()函数中:http://www.w3schools.com/jsref/jsref_encodeuri.asp

要在JS中解码使用:decodeURI()函数:http://www.w3schools.com/jsref/jsref_decodeuri.asp

要在PHP中解码,请使用rawurldecode()函数:http://www.php.net/manual/en/function.rawurldecode.php

答案 1 :(得分:0)

使用此功能并对您的说明进行编码,这将接受您的特殊字符..您可能会搜索这个并不确定您想要的是什么

encodeURIComponent()

string rawurlencode ( string $str )

改善你的问题......难以理解