Я получаю Uncaught Syntax Error: Unexpected Identifier в окне консоли Chrome. Строки ниже, я только что опубликовал фрагмент функции, всю функцию можно найти на jsFiddle.

var shipping_price = $(".shipping_price").html();
shipping_price = shipping_price.substring(1, shipping_price.length);
$('input[name="shipping_price"]').val(shipping_price); // Update our Hidden Field

// Unexpected Identifier
result += eval(shipping_price); // This is where Im getting the error

Мне нужно использовать eval, иначе функция не сработает. Я также получаю сообщение об ошибке при вызове указанной выше функции:

// Call getTotalPrice(); On DOM Ready
// dom ready
getTotalPrice(); // Anonymous function error, I think this is fixed when I fix the above error.

Есть идеи, как я могу это легко исправить?

0
anon 26 Авг 2011 в 20:49

2 ответа

Лучший ответ

Попробуй это

var shipping_price = $(".shipping_price").html();
shipping_price = shipping_price.substring(1); //unless your removing the dollar sign from the string, you should start on 0, not 1.. which would mean you dont need substring at all.
$('input[name="shipping_price"]').val(shipping_price); // Update our Hidden Field

result += Number(shipping_price); 

Кроме того, ошибка анонимной функции означает, что функция не существует, проверьте регистр букв и орфографию.

1
Johnny Craig 26 Авг 2011 в 17:09
  1. В .substring вы можете опустить второй параметр, если хотите, чтобы все символы от указанной позиции до конца.
  2. Никогда не используйте eval. Кажется, вы конвертируете строку в число. parseFloat - это то, что вам нужно.

Например.

var shipping_price = $(".shipping_price").html();
shipping_price = shipping_price.substring(1);
$('input[name="shipping_price"]').val(shipping_price);

result += parseFloat(shipping_price);
1
pimvdb 26 Авг 2011 в 16:53