Javascript 如何在Jquery中编辑元素的数据属性

Javascript 如何在Jquery中编辑元素的数据属性,javascript,jquery,Javascript,Jquery,我有一个列表视图,其中有一些数据属性 示例如下 <li class="dd-item alert mar action" data-id=3 data-name="pushNotify" data-api="/api/v1/mailZoh" data-url="http://google.com" data-json="[{'data':'sss'}]"> <div class="dd-handle">Push Notofication <span class

我有一个列表视图,其中有一些数据属性

示例如下

 <li class="dd-item alert mar action" data-id=3 data-name="pushNotify" data-api="/api/v1/mailZoh" data-url="http://google.com" data-json="[{'data':'sss'}]">
  <div class="dd-handle">Push Notofication <span class="cust-close" data-dismiss="alert" aria-label="Close"><i class="fa fa-times"></i></span> &nbsp; <span class="edit cust-close" data-toggle="modal" data-target="#editAction"><i class="fa fa-pencil"></i></span></div>
</li>
模态

<div class="modal fade" id="editAction" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel">
  <div class="modal-dialog" role="document">
    <div class="modal-content">
    <form action="{{ route('wfengine/addWorkFlow') }}" method="POST">
      <div class="modal-header">
        <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
        <h4 class="modal-title" id="exampleModalLabel">Edit <span class="action_name" style="text-transform: capitalize"></span></h4>
      </div>
      <div class="modal-body">
          <input type="hidden" name="action_id" value="" />
          <div class="form-group">
            <label for="message-text" class="control-label">Api</label>
            <input type="text" class="form-control" id="action_api" value='' />
          </div>
          <div class="form-group">
            <label for="message-text" class="control-label">Url</label>
            <input type="text" class="form-control" id="action_url" value='' />
          </div>
          <div class="form-group">
            <label for="message-text" class="control-label">Json</label>
            <input type="text" class="form-control" id="action_json" value='' />
          </div>

      </div>
      <div class="modal-footer">
        <button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
        <button type="submit" class="btn btn-primary">Save Action</button>
      </div>
      </form>
    </div>
  </div>
</div>

&时代;
编辑
应用程序编程接口
网址
Json
关
保存操作
在模式中有一个保存按钮。如何将该数据保存回列表视图中

谢谢


现在,我想知道如何将数据保存回列表中。

您可以使用类似的
li.data('url',$actionUrl.val())保存数据。

正如一些人建议的那样,在全局范围内公开缓存的
li
不是一个好主意

否则您可以像
var li=$(this.parent().parent()

但我的主要答案仍然是一样的

var-li;
var$actionUrl=$(“#action_url”);
var$actionApi=$(“#action_api”);
var$actionJson=$(“#action_json”);
变量$actionName=$('.action_name');
var$actionid=$(“#action_id”);
$('body')。在('click','edit',function()上{
li=$(this.parent().parent();
$actionUrl.val(li.data('url'));
$actionApi.val(li.data('api'));
$actionJson.val(li.data('json'));
$actionName.html(li.data('name'));
$actionid.val(li.data('id'));
})
$('button[type=“submit”]”)。在('click',function()上{
li.data('url',$actionUrl.val()).data('api',$actionApi.val()).data('json',$actionJson.val());
})

  • 推式命名
&时代; 编辑 应用程序编程接口 网址 Json 关 保存操作
使用
数据
功能可以更改数据的值。只需在jquery中使用<代码>$('#myelement')。数据('myData','value')只需运行一个函数并从模式中获取数据,然后保存并更新列表属性?jQuery数据和数据属性不是不同的东西吗?使用
$('#myelement')[0].dataset.myData='value'
$('#myelement').attr('data-myData','value')
@evolutionxbox我的主要问题是,我不知道如何获取列表的引用,我会试试你的solution@evolutionxbox我没有列表的唯一ID,我只有它的父级ID,那么我应该怎么做呢?是的。为什么不缓存上次单击的li编辑,并更新缓存的li数据属性\
<div class="modal fade" id="editAction" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel">
  <div class="modal-dialog" role="document">
    <div class="modal-content">
    <form action="{{ route('wfengine/addWorkFlow') }}" method="POST">
      <div class="modal-header">
        <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
        <h4 class="modal-title" id="exampleModalLabel">Edit <span class="action_name" style="text-transform: capitalize"></span></h4>
      </div>
      <div class="modal-body">
          <input type="hidden" name="action_id" value="" />
          <div class="form-group">
            <label for="message-text" class="control-label">Api</label>
            <input type="text" class="form-control" id="action_api" value='' />
          </div>
          <div class="form-group">
            <label for="message-text" class="control-label">Url</label>
            <input type="text" class="form-control" id="action_url" value='' />
          </div>
          <div class="form-group">
            <label for="message-text" class="control-label">Json</label>
            <input type="text" class="form-control" id="action_json" value='' />
          </div>

      </div>
      <div class="modal-footer">
        <button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
        <button type="submit" class="btn btn-primary">Save Action</button>
      </div>
      </form>
    </div>
  </div>
</div>
$('[data-id="'+$actionid+'"]').data('url', $actionUrl.val()).data('api', $actionApi.val()).data('json', $actionJson.val());