jQuery问题.data()在其值中包含空格

时间:2015-08-13 21:51:11

标签: javascript jquery twitter-bootstrap

很多问题与此相似,但我并不能真正看到我做错了什么。

所以我传递了以下形式的开放式bootstrap模式:

    <form>
      VIN: <br>
      <input type="text" id="updateVin" name="updateVin" value="">
      <br>
      Description: <br>
      <input type="text" id="updateDescription" name="updateDescription" value="">
      <br>
      Color: <br>
      <input type="text" id="updateColor" name="updateColor" value="">
      <br>
      Model: <br>
      <input type="text" id="updateModel" name="updateModel" value="">
      <br>
      Area ID: <br>
      <input type="text" id="updateAreaId" name="updateAreaId" value="">
      <br>
      Geofence ID: <br>
      <input type="text" id="updateGeofenceId" name="updateGeofenceId" value="">
      <br>
      <button class="btn btn-warning" id="updateVehicle">Update</button>
      &nbsp;
      <button class="btn btn-danger" id="deleteVehicle"> 
      Delete 
      </button>
   </form>

我想将输入值设置为不同链接到同一模态的不同。

我这样做了:

$(document).on("click", ".open-UpdateModal", function () {
        var vin = $(this).data('vin');
        var description = $(this).data('description');
        var color = $(this).data('color');
        var model = $(this).data('model');
        var areaId = $(this).data('areaid');
        var geofenceId = $(this).data('geofenceid');
        $(".update #updateVin").val( vin );
        $(".update #updateDescription").val( description );
        $(".update #updateColor").val( color );
        $(".update #updateModel").val( model );
        $(".update #updateAreaId").val( areaId );
        $(".update #updateGeofenceId").val( geofenceId );
        $('h4.modal-title').text( 'Updating ' + vin + ':');
    });

我从我的一个表中获取表数据的值:

<td>
    <a data-toggle="modal" href="#my_modal" class="open-UpdateModal"
    data-deletevin=<%= vehicles[i].vin %>
    data-vin=<%= vehicles[i].vin %> 
    data-description=<%= vehicles[i].description %> 
    data-color=<%= vehicles[i].color %> 
    data-model=<%= vehicles[i].model %> 
    data-areaid=<%= vehicles[i].areaId %> 
    data-geofenceid=<%= vehicles[i].geofenceId %>>
    <%= vehicles[i].vin %> </a>
</td>

这很完美!除了例如数据描述等于丰田Rav4&#39;之外,输入值将只是丰田&#39;。除此之外,这是完美的。

这是jQuery和空白的问题吗?或者我做错了什么?

我尝试过使用$(this).attr(&#39; data-description&#39;)。

1 个答案:

答案 0 :(得分:3)

只需在值周围添加引号:

<a data-toggle="modal" href="#my_modal" class="open-UpdateModal"
data-deletevin="<%= vehicles[i].vin %>"
data-vin="<%= vehicles[i].vin %>"
data-description="<%= vehicles[i].description %>" 
data-color="<%= vehicles[i].color %>" 
data-model="<%= vehicles[i].model %>" 
data-areaid="<%= vehicles[i].areaId %>"
data-geofenceid="<%= vehicles[i].geofenceId %>">
<%= vehicles[i].vin %> </a>