2017-09-05 58 views
-3

我试图运行这样的功能:为什么我无法将句子值传递给jQuery函数?

onclick="preConfirm(New Lots Avenue,40.660223,-73.896668);"

但我一直在控制台中的错误说

Uncaught SyntaxError: missing) after argument list

我在做什么错?

+2

第1步:不要使用内联事件处理程序/ JavaScript – j08691

+2

字符串值需要用引号引起来。就像每一种编程语言一样。 – David

回答

3
onclick="preConfirm('New Lots Avenue','40.660223','-73.896668');" 
1

法哈德的答案是正确的,但你也可能需要j08691的评论考虑,并从你的HTML代码中分离您的JS:

1)使用数据属性来保存您的信息

<button 
    data-address="New Lots Avenue" 
    data-lat="40.660223" 
    data-lng="-73.896668" 
>Confirm</button> 

2 )并使用JavaScript获取preConfirm函数中的信息:

// Grab the button and add an event listener 
const button = document.querySelector('button'); 
button.addEventListener('click', preConfirm, false); 

function preConfirm(e) { 

    // dataset is an object containing your information 
    // { address → "New Lots Avenue", lat → "40.660223", lng → "-73.896668" } 
    console.log(e.target.dataset); 
} 

或者更简单地使用jQuery:

$('button').click(preConfirm); 

function preConfirm() { 
    console.log($(this).data()); 
} 

您可以访问DataSet对象为正常:

dataset.address // New Lots Avenue 
dataset.lat // 40.660223 
dataset.lng // -73.896668 

Vanilla JS DEMO | jQuery DEMO

相关问题