2012-07-20 2 views
-3

AJAX 호출에 param으로 보낼 문자열 param을 만들려고 시도하고 있지만 간단한 연결을 포함하여 문자열을 작성하려고 시도한 여러 가지 방법이 작동하지 않았습니다. 이 작업을 수행하기위한 제안 사항은 무엇입니까?JavaScript strings

var partRelationType = checkBox.name; 
var partNumber = checkBox.value; 
var isChecked = checkBox.checked; 

$.ajax({ 
    url: '@Url.Action("SetSelectedPart", "Select", new { customerEstimateKey = ViewBag.CustomerEstimateKey, type = partRelationType, partNumber = partNumber, isSelected = isChecked })', 
    type: "POST", 
    async: true 
}); 
+0

WTH는 "@ Url.Action"입니까? – hugomg

+0

어 덴덤 (concatenation)은 어디에 있습니까? 대부분의 값은 다른 종류의 변수처럼 보입니다. 'url :'와 같이 추가해야합니다. 'somewebadress'+ some_variabel + 'morestringadress'+ a.different.variable, ' – adeneo

+0

Ajax 함수는 서버의 다른 페이지를 호출해야합니다. 페이지에 매개 변수를 전달하려면 'url : targetPage.html? myParameter = myValue'와 같이하십시오. – Thoross

답변

2

URL은 서버 측 코드를 사용하여 만들어 지므로 클라이언트 측 변수는 아직 존재하지 않으므로 사용할 수 없습니다.

대신 데이터의 data 속성을 사용하십시오. 데이터가 서버 코드에 의해 URL에 어떻게 저장되는지는 잘 모르지만 다음과 같이 작동해야합니다.

$.ajax({ 
    url: '@Url.Action("SetSelectedPart", "Select", new { customerEstimateKey = ViewBag.CustomerEstimateKey })', 
    data: { type: partRelationType, partNumber: partNumber, isSelected: isChecked }, 
    type: "POST", 
    async: true 
}); 
+0

좋은 정보. 고맙습니다! – birdus

0

URL은 http://www.blah.com.au/foo.aspx?type=bar&id=22 또는

just foo.aspx?type=bar&id=22 당신이 당신의 URL.action 주위에 서버 측 태그를 누락과 같은 URL 할 필요가?

일부 구문 분석은 자동으로 위의 형식으로 된 URL로 변환됩니까?

+0

서버 태그가 있습니다. 면도기 구문은 @를 사용하여 서버 코드 블록을 시작하고 끝 태그는 시작하지 않습니다. – Guffa

관련 문제