javascript - 使用 jQuery 或 Javascript 从 Cookie 中删除特定数据

标签 javascript php jquery cookies

我正在处理日程安排日历的 cookie 数据。 我在 cookie 中有数组,用它我制作了表格。现在我想从该行最后一列的最后一个删除按钮删除表格行。

我的代码如下所示

$cookie_data = '2017-06-27+06:00-06:30,2017-06-29+12:00-12:30,2017-07-01+06:00-12:00-17:00 ';

echo '<table class="table table-bordered"  id="schedule">
<tr>
<th>Date</th>
<th>Times</th>
<th>Delete</th>
</tr>';
$val = $cookie_data;
$num_dates = explode(',',$val);
foreach($num_dates as $k => $v){
    $bdata = explode('+',$v);
    echo '<tr><td><label>'.$bdata[0].'</label></td><td><label>'.$bdata[1].'</label></td><td><button>Delete</button></td></tr>';
}
echo '</table>';

代码也在 phpfiddle 上运行。

http://phpfiddle.org/main/code/8ch0-merp

现在我想通过单击删除按钮来删除任何值。

最佳答案

试试这个,

目前fiddle会报错。因为 stackoverflow 不允许设置自定义 cookie。所以你可以在你身边尝试这个代码,而且我也将代码转换为 html,所以你必须在 php 中转换。

您可以根据需要设置 cookie 名称,我只是在这里给出示例。

希望这对你有帮助:)

$("button").on("click",function() {
    var cookieStr = $(this).attr("data-cookie");
    var setCookieVal = [];
    var cookieValue = $("#cookievalue").val().split(",");
    for(i = 0; i< cookieValue.length; i++) {
        if(cookieStr !== cookieValue[i]) {
           setCookieVal.push(cookieValue[i]);
        }
    }
    $.cookie("yourCookie",setCookieVal);
    $(this).parent().parent().remove();
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery-cookie/1.4.1/jquery.cookie.min.js"></script>
<body>
  <input type="hidden" value="2017-06-27+06:00-06:30,2017-06-29+12:00-12:30,2017-07-01+06:00-12:00-17:00" id="cookievalue">
  <table class="table table-bordered" id="schedule">
	  <tbody>
      <tr>
        <th>Date</th>
        <th>Times</th>
        <th>Delete</th>
      </tr>
      <tr>
        <td><label>2017-06-27</label></td>
        <td><label>06:00-06:30</label></td>
        <td>
          <button data-cookie="2017-06-27+06:00-06:30">Delete</button>
         </td>
      </tr>
      <tr>
        <td><label>2017-06-29</label></td>
        <td><label>12:00-12:30</label></td>
        <td>
          <button data-cookie="2017-06-29+12:00-12:30">Delete</button>           
        </td>
      </tr>
      <tr>
        <td><label>2017-07-01</label></td>
        <td><label>06:00-12:00-17:00 </label></td>
        <td>
          <button data-cookie="2017-07-01+06:00-12:00-17:00">Delete</button>           
        </td>
      </tr>
    </tbody>
  </table>
</body>

关于javascript - 使用 jQuery 或 Javascript 从 Cookie 中删除特定数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44772907/

相关文章:

javascript - CKEditor 从选择中删除选项

javascript - 当我点击 Laravel 中的新窗口时,我的页面未显示任何内容(*白屏”)

javascript - jQuery:在表单上选择焦点,显示 div。在模糊时隐藏 div

php - Woocommerce 列出所有以前订购的产品

php - MySQL 级联删除自引用父子表?

javascript - 如何使用 Google Analytics 跟踪下载?

php - 通过表单提交更改 PHP 变量/值

jquery - 如果父级有某个类,则将类添加到父级标记

javascript - 在 Angular js 中使用 Tooltipster Jquery 插件

javascript - 为什么我只能删除数据表中的某些行? (jquery)