小编Ran*_*dan的帖子

Materializecss Autocomplete 上的两个 onChange 事件

设想:

我正在使用 Materializecss 自动完成功能,当我从自动完成框中选择一个项目时,应该触发一个 onchange 事件。

代码:

<div class="row">
  <div class="col s12">
    <div class="row">
      <div class="input-field col s12">
        <input type="text" id="autocomplete-input" class="autocomplete" onchange="sendItem(this.value)">
        <label for="autocomplete-input">Autocomplete</label>
      </div>
    </div>
  </div>
</div>
<script>
$('input.autocomplete').autocomplete({
  data: {
    "Apple": null,
    "Microsoft": null,
    "Google": 'http://placehold.it/250x250'
  },
  limit: 20, 
});
  function sendItem(val) {
    console.log(val);
  }
</script>
Run Code Online (Sandbox Code Playgroud)

问题:

当我键入“AP”并从自动完成中选择“APPLE”时,我需要触发一个传递值“APPLE”的 onchange 事件,但上述程序触发两次 onchange 事件,一次传递“AP”,下一次传递“APPLE” . 我怎样才能触发后一个事件。任何意见将是有益的。谢谢你。

这是一个有效的 jsfiddle 程序。

javascript jquery autocomplete materialize

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

Scrapy 具有多个页面

我创建了一个简单的 scrapy 项目,在其中,我从初始站点 example.com/full 获取了总页码。现在我需要抓取从 example.com/page-2 开始到 100 的所有页面(如果总页数为 100)。我怎样才能做到这一点?

任何意见将是有益的。

代码:

import scrapy


class AllSpider(scrapy.Spider):
    name = 'all'
    allowed_domains = ['example.com']
    start_urls = ['https://example.com/full/']
    total_pages = 0

def parse(self, response):
    total_pages = response.xpath("//body/section/div/section/div/div/ul/li[6]/a/text()").extract_first()
    #urls = ('https://example.com/page-{}'.format(i) for i in range(1,total_pages))
    print(total_pages)
Run Code Online (Sandbox Code Playgroud)

更新#1:

我尝试使用它,urls = ('https://example.com/page-{}'.format(i) for i in range(1,total_pages))但它不起作用,可能是我做错了什么。

更新#2:我已经像这样更改了我的代码

class AllSpider(scrapy.Spider):
name = 'all'
allowed_domains = ['sanet.st']
start_urls = ['https://sanet.st/full/']
total_pages = 0

def parse(self, response):
    total_pages = response.xpath("//body/section/div/section/div/div/ul/li[6]/a/text()").extract_first()
    for page in range(2, int(total_pages)):
        url = …
Run Code Online (Sandbox Code Playgroud)

scrapy web-scraping python-3.x

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

在重复记录中添加增量编号

我有 SSIS 包,它检索所有记录,包括重复项。我的问题是如何为重复记录(仅 ID 和 PropertyID)添加增量值。

例如

来自合并连接的记录

ID   Name   PropertyID  Value
1    A      1           123
1    A      1           223
2    B      2           334
3    C      1           22
3    C      1           45
Run Code Online (Sandbox Code Playgroud)

现在我需要在每条记录的末尾附加一个增量值作为

ID   Name   PropertyID  Value  RID
1    A      1           123    1
1    A      1           223    2
2    B      2           334    1
3    C      1           22     1
3    C      1           45     2
Run Code Online (Sandbox Code Playgroud)

由于 ID 1 和 3 被返回两次,第一条记录的 RID 为 1,第二条记录的 RID 为 2。

需要考虑 ID 和 PropertyID 来生成重复 …

t-sql sql-server ssis

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

从rest api中仅获取所需的数据

我安装了一个 WordPress博客用于测试目的。我有一个 Angular 应用程序,它使用 WordPress Rest API。该应用程序调用一个获取类别的 api。json 响应包含我不会在我的应用程序中使用的数据。因此,我创建了一个模型,其中仅包含我需要的值,例如名称、slug 等。但是当我控制台响应时,它显示了整个数据。我该如何限制它?

代码:

模型

  export interface BlogCategoryModel {
    id: number;
    name: string;
    slug: string;
    parent: number;
  } 
Run Code Online (Sandbox Code Playgroud)

服务

  getCategories(): Observable<BlogCategoryModel[]> {
    const url = 'https://blog.varanjith.com/wp-json/wp/v2/categories';
    return this.http.get<BlogCategoryModel[]>(url);
  }
Run Code Online (Sandbox Code Playgroud)

成分

  ngOnInit() {
    this.blogService.getCategories().subscribe((x: BlogCategoryModel[]) => {
      console.log(x);
    });
  }
Run Code Online (Sandbox Code Playgroud)

输出

在此输入图像描述

为什么我在控制台中看到计数和描述?那里发生了什么事?我没有在 BlogCategoryModel 中包含计数和描述

typescript angular

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