1

我正在尝试在元素上添加onChange事件。selecthtml 看起来像这样:

<select name="to" onChange="if(type(this.selectedIndex) != undefined){ alert('hello'); }">
    <option value="newsletter">Alle nieuwsbrief-abonnees</option>
    <option value="customer_all">Alle klanten</option>
    <option value="customer_group">Klantengroep</option>
    <option value="customer">Klanten</option>
    <option value="affiliate_all">Alle affiliates</option>
    <option value="affiliate">Affiliates</option>
    <option value="product">Producten</option>
    <option value="marketing">Alle Marketing Abbonnees</option>
    <option value="marketing_all">Alle Marketing</option>
    <option value="subscriber">Alle Nieuwsbrief Abbonnees &amp; Marketing Abbonnees</option>
    <option value="all">Alle Klanten &amp; Marketing</option>
    <option value="old_brian">Oude lijst Brian</option>
    <option value="old_dunamis">Oude lijst Dunamis</option>
    <option value="old_frohlich">Oude lijst Frohlich</option>
    <option value="old_gaithers">Oude lijst Gaithers</option>
    <option value="old_gospel7">Oude lijst Gospel7</option>
    <option value="old_lifeshop">Oude lijst Lifeshop</option>
    <option value="old_meyer">Oude lijst Meyer</option>
    <option value="old_opwekking">Oude lijst Opwekking</option>
    <option value="old_pelgrim_kerken">Oude lijst Perlgim Kerken</option>
    <option value="old_pelgrim_klanten">Oude lijst Pelgrim Klanten</option>
    <option value="old_pelgrim_pers">Oude lijst Pelgrim Pers</option>
    <option value="old_pelgrim_scholen">Oude lijst Pelgrim Scholen</option>
    <option value="old_test">Oude lijsten test</option>
</select>

这是它的 JSFIDDLE

onchange 脚本来自stackoverflow 上的答案:Is there an onSelect event or equivalent for HTML ?

但我收到以下错误:

Uncaught TypeError: string is not a function 

我一头雾水,有什么问题?你不能在 onChange 事件中做一个 if 语句吗?或者是别的什么?

4

1 回答 1

6

type不是内置函数。typeof是一个运营商,不过,这可能是你想要的;它返回一个字符串:

if (typeof this.selectedIndex !== "undefined") // But see below

但请注意,这selectedIndex绝不是undefinedselect元素上。它可能是 -1,表示没有选择,但不是undefined。所以:

if (this.selectedIndex !== -1)

关于错误:我的猜测是您有一个名为 的全局变量type,并且它包含一个字符串。那会给你错误TypeError: string is not a function

于 2013-07-29T16:43:45.857 回答