2014-01-29 2 views
-1

나는 다음과 같은 함수 호출이 : 나는 다양한 요소에서 값을 잡아서 내 dialogOpen 기능에 여러 값을 전달하려고javascript 매개 변수가 정의되지 않은 이유는 무엇입니까?

var id = $(this).attr("id"); 
    var style = $.trim($(this).find(".tdStyle").html()); 
    var qtyOnHand = $.trim($(this).find(".tdQtyOnHand").html()); 
    var PlantID = $.trim($(this).find(".tdPlantID").html()); 
    var Size = $.trim($(this).find(".tdSize").html()); 

    dialogOpen(id, style, qtyOnHand, $(this), Size); 

합니다. 마지막 값인 _Size를 제외하고 아래에 표시된 dialogOpen 함수에서 모든 값이 올바르게 작동합니다. 나는 다음과 dialogOpen에 도착하기 전에 나는 _size의 값을 테스트 :

var _Size = ($.trim($(this).find(".tdSize").html())); 
console.log(_Size); 

을 console.log 여기 2.378

을 보여주고 있습니다 내가 얻을 내 기능에 대한 내 코드의 시작 정의되지 않은 (xSize에) :

function dialogOpen(ID, style, QtyOnHand, row, PlantID, xSize) 
{ 
debugger; 
console.log(xSize); 
$('#dialogForm').dialog({ 
title: 'Enter Quantity', 
height: 200, 
+1

내가 그들 모두는 당신이 무엇을 기대 받고 확인하기 위해 로그인 변수에 각 트림 문을 설정 한 후 콘솔 것, 그런 다음 값이 올바른지 일단 변수를 dialogOpen() 호출에 전달합니다. 외침 안에 손질을 너무 지저분하게하면 문제가 어디 있는지 결코 알 수 없습니다. 또한 _으로 변수를 시작하지는 않으나 문제가 될 수 있습니다. – rncrtr

+0

나는 그것을보고 다시보고 할 것이다. 범위 문제가 없는지 확인하기 위해 테스트로 _ 만 사용하여 변수를 설정했습니다. 감사. dialoadOpen 메소드의 –

+0

은'console.log (arguments)'를 확인할 수 있습니다 –

답변

1

여섯 개 매개 변수 및 호출에 다섯 값이 있습니다.

두 번째 값에서 마지막 값까지 괄호를 잘못 넣었으므로 마지막 두 값은 사이에 쉼표 연산자가있는 괄호 안에 있습니다.

$.trim($(this).find(".tdPlantID").html(), _Size) 

하지만, 당신은해야합니다 :

당신은이

$.trim($(this).find(".tdPlantID").html()), _Size 
+0

와우. 내가 그걸 믿을 수 없어. Guffa에게 감사드립니다. –

2

5 개의 인수 만 보냅니다. 아마도 실수 일뿐입니다. 이 변경이로

dialogOpen($(this).attr("id"), $.trim($(this).find(".tdStyle").html()), $.trim($(this).find(".tdQtyOnHand").html()), $(this), $.trim($(this).find(".tdPlantID").html(), _Size)); 

을 :

dialogOpen($(this).attr("id"), $.trim($(this).find(".tdStyle").html()), $.trim($(this).find(".tdQtyOnHand").html()), $(this), $.trim($(this).find(".tdPlantID").html()), _Size); 
관련 문제