为什么我不能将句子值传递给jQuery函数?

时间:2017-09-05 18:19:38

标签: javascript jquery

我正在尝试运行这样的函数:

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

但是我总是在控制台中说错误

Uncaught SyntaxError: missing ) after argument list

我做错了什么?

2 个答案:

答案 0 :(得分:3)

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

答案 1 :(得分:1)

Farhad的回答是正确的,但您也可以考虑j08691的评论并将您的JS与HTML分开:

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.address // New Lots Avenue
dataset.lat // 40.660223
dataset.lng // -73.896668

Vanilla JS DEMO |的 jQuery DEMO