小编One*_*era的帖子

如何重置数据表中的过滤器

我无法使用fnFilter()清除过滤器。

这是我的HTML代码:

<table id="todays _table>

               <thead>
                 <tr id="todays_search_input_feilds">
                     <td class="input_filter">
                        <input type="text" id="type" class="form-control search_events">
                    </td>
                    <td class="input_filter">
                        <input type="text" id="vendor " class="form-control search_events">
                    </td>
                </tr>
            </thead>
    </table> 
Run Code Online (Sandbox Code Playgroud)

这是我的JQuery代码

$('#todays_table').dataTable().fnFilter('');
    oTable.fnClearTable();
Run Code Online (Sandbox Code Playgroud)

我尝试使用以下方法进行清除:

$('input[class="form-control search_events"]').val('');
Run Code Online (Sandbox Code Playgroud)

但是,这样做的问题是,它清除了值,但数据未加载到dataTable中。仅在我单击任何过滤器后才加载

jquery datatables

5
推荐指数
3
解决办法
2万
查看次数

如何使用纯 JavaScript 在下拉列表中构建可折叠选项

我正在尝试构建一个具有可折叠选项的自定义下拉菜单。下拉菜单中的每个选项都会有子选项,选择后会给我值。

在摘要上,下拉菜单应如下所示:

在此处输入图片说明

考虑到上述想法,我已经通过小提琴尝试了我的方法。

function myFunction() {
  var x = document.getElementById("myDIV");
  if (x.style.display === "none") {
    x.style.display = "block";
  } else {
    x.style.display = "none";
  }
}
Run Code Online (Sandbox Code Playgroud)
.main-div {
  display: inline-block;
  padding: 15px;
  width: 180px;
  cursor:pointer;
   border: 1px solid salmon;
}

.inner-div {
  position: absolute;
  width: 210px;
  top: 58px;
  left: 8px;
  height: 300px;
  border: 1px solid salmon;
}
.inner-div > ul {
  list-style-type: none;
  border-bottom: 1px solid salmon;
  margin: 5px;
  padding: 10px;
}
.inner-div > ul > span {
  display: inline; …
Run Code Online (Sandbox Code Playgroud)

html javascript css dropdown

5
推荐指数
1
解决办法
243
查看次数

如何在Angular 8应用程序中添加移动访问令牌?

我已将应用程序部署到UAT,但是无法直接在移动设备上运行我的应用程序,因为它直接进入了access-denied(401)页面。我认为这是由于访问令牌问题。

我主要有2个拦截器来处理我的应用程序。1.错误拦截器-处理任何路由错误或未经授权的错误。2. jwt-分配令牌,该令牌在内部调用身份验证服务以获取令牌。

以下是我的服务文件,在该文件中,我试图通过发送准备好接收令牌的postMessage来获取会话或本地或窗口事件中的访问令牌。

身份验证服务

public getToken() {
    let accessToken = null;
     const auth = JSON.parse(sessionStorage.getItem('auth'));
    if (auth) {
        accessToken = auth.access_token;
    } elseif (accessToken == null || accessToken === undefined) {
        accessToken = localStorage.getItem('access_token');
    }

 window.addEventListener('message', function(event){
      // this event should have all the necessary tokens
 }, false);

 // once my page is loaded to indicate that I am ready to receive the message from server side.
  parent.postMessage({ askForToken:"true"}, "*");

  return accessToken;
}
Run Code Online (Sandbox Code Playgroud)

我正在发送parent.postMessage以使window.addEventListener能够检索数据,但事件未按预期发送令牌。

我正在authentication.service.ts中执行所有上述代码实现,所以不确定是否正确的方法。

任何人都可以建议我正确的方法来实现此代码并适当地接收令牌吗?

请纠正我,因为我是第一次尝试使用令牌进行部署。

javascript security oauth access-token angular

4
推荐指数
1
解决办法
545
查看次数

在 Angular 2+ 中订阅后 API 调用失败时如何重试

我正在调用 API 来获取随机详细信息。问题是,有时我会收到 502 错误作为网关错误,并且它也可能由于网络连接错误而中断。下面是我的API调用代码

// COMPONENT API CALL SUBSCRIBE
     this._service.post('randomAPI/getdetails', filters).subscribe((response: any) => {
     this.itemList = response;    
   });

// SHARED SERVICE
     post<T>(url: string, body: any): Observable<T> {
     return this.httpClient.post<T>(url, body);
   } 
Run Code Online (Sandbox Code Playgroud)

每当我收到 500 或 502 服务器错误时,我都会使用拦截器路由到错误页面以通知用户服务器问题。

相反,如果失败,我可以让 API 在组件级别或拦截器级别再尝试一次,然后路由到错误页面吗?

// INTERCEPTOR
    intercept(request: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> {
    return next.handle(request).pipe(catchError(error => {
        if (error.status === 401 || error.status === 400 || error.status === 403) {
            this.router.navigateByUrl('abort-access', { replaceUrl: true });
        } else if (error.status === 500 || error.status === 502) …
Run Code Online (Sandbox Code Playgroud)

interceptor rxjs angular angular-httpclient retrywhen

4
推荐指数
1
解决办法
1万
查看次数

如何处理事件并将其从定义组件传递到点亮组件

我正在尝试使用 lit Element 设计 Web 组件,并且我需要有关事件的帮助。正如我们从附加的代码片段中看到的,我们可以@change="${this.handleEvent}"在 html 模板中使用并处理该函数handleEvent(e){}并处理lit Element 组件内的通过这种方式,事件仅在点亮的 Web 组件中受到限制和控制。

然而,当其他人使用我们的 Web 组件时,他们对定义组件中这些事件的值没有太多控制或访问权限。例如,如果我们有一个 index.html 文件并且我像这样使用它<my-element onchange="handleEvent(e)"></my-element>,我应该有权访问 onchange 事件并仅调用索引文件内的函数。

那么,有没有一种方法可以实现与常规 html 事件类似的行为,而不是编写仅限于 lit Element Web 组件的事件。

<script src="https://unpkg.com/@webcomponents/webcomponentsjs@latest/webcomponents-loader.js"></script>
<script type="module">
  import { LitElement, html, css } from 'https://unpkg.com/lit-element/lit-element.js?module';
  
  class MyElement extends LitElement {
  
   static get properties() {
      return {
        checked:  { type: Boolean, attribute: true }
      };
    }
    
    static get styles() {
      return [
        css`
          div {
            padding: 10px;
            width: 90px;
            border: 2px …
Run Code Online (Sandbox Code Playgroud)

javascript vaadin web-component polymer lit-element

4
推荐指数
1
解决办法
1万
查看次数

如何将 JSON 对象键值对分别绑定到 angular 模板

我有一个来自 API 的动态 json,如下所示:

 {123: "Mumbai", 456: "Bangalore", 789: "Chennai", 101: "Andhra",...}
Run Code Online (Sandbox Code Playgroud)

我在模板中编写了以下 HTML 代码,其中我从资产文件夹中获取 image-1、image-2 徽标

  <div class="row">
    <div class="col-6" (click)="cityClick('Bangalore')">
      <div class="img-1">
        // my image-1 logo goes here
      </div>
      <div class="img-text">
        Bangalore
      </div>
    </div>
    <div class="col-6" col-6 (click)="cityClick('Mumbai')">
      <div id="image_block" class="img-2">
        // my image-2 logo goes here
      </div>
      <div id="text_block" class="img-text">
        Mumbai
      </div>
    </div>
  </div>
Run Code Online (Sandbox Code Playgroud)

如何在单击图像时获取 json 的键并从相应的键值中显示图像下方的文本。当我点击时,我应该能够在点击事件中传递键和文本。请帮助,因为我是 Angular 的新手!

json angular2-template typescript2.0 angular angular5

1
推荐指数
1
解决办法
1万
查看次数

如何使用可变步数获得可枚举范围

我正在尝试获取一个列表,范围从具有可变步数的最小值和最大值。

例如:如果我设置最小值为 10,000,最大值为 150,000,步数为 20,000。我应该能够得到列表为 [10000,30000,50000,70000,...,150000]。

类似地,如果步数设置为 15,000 - 我应该得到列表为 [10000,25000,40000,...,145000]

 int min = 10000;
 int max = 150000;
 int step = 20000;

 var result = Enumerable.Range( min, max).Where(i => i<= max && (i % step == 0));
 foreach (int num in result) { Console.WriteLine(num); } // output: [20000,40000,60000,80000,100000,120000,140000]
Run Code Online (Sandbox Code Playgroud)

由于我使用模数运算符来等于零值,因此它跳过了范围中的第一个值,并给出了上述结果而不是 [10000,30000,..,150000]。由于我对 C# 编程非常陌生,任何人都可以用上面的代码纠正我以获得所需的输出。

PS:我已经提到了这个线程如何使用 Enumerable.Range 获取备用数字?但无法找到答案。

.net c# linq enumerable enumerable.range

1
推荐指数
1
解决办法
883
查看次数