Я тестировал следующие коды много раз. Он работает хорошо, и я получаю результат «return photoMenu_sb.ToString();» как только я удалю строковый аргумент photoFileName. Но когда я объявляю и пытаюсь передать строку photoFileName, ничего не происходит. Зачем?Передача строкового аргумента функции javascript
Я думаю, что проблема заключается в объявлении и передаче строкового photoFileName функции javascript, но я не могу идентифицировать проблему, так как я не получаю никаких ошибок. Есть ли какие-то недостающие цитаты?
[WebMethod]
public static string LoadPhotosPopup(int offset, int fetch, string IDuserInput)
{
StringBuilder photosPopup_sb = new StringBuilder();
var photosPopup_query = db.Query("SELECT IDphoto], [photoFileName] FROM [photos] WHERE ([IDuser] = @0 AND [photoPublished] = 'True') ORDER BY [photoDate] DESC OFFSET @1 ROWS FETCH NEXT @2 ROWS ONLY", IDuserInput, offset, fetch);
foreach (var item in photosPopup_query)
{
var IDphoto = item.IDphoto;
var photoFileName = item.photoFileName;
photosPopup_sb.Append("<img src=\"Images/Design/openmenu.png\" onclick=\"photoMenu(" + IDphoto + ", '" + photoFileName + "') \" />");
}
return photosPopup_sb.ToString();
}
JavaScript
function photoMenu(IDphoto, photoFileName) {
$.ajax({
type: "POST",
url: "UserControls/photosFunctions.aspx/photoMenu",
data: "{ IDphoto: " + IDphoto + "}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (data) {
$("#CommentsMenu" + IDphoto).html(data.d);
}
})
}
[WebMethod]
{ StringBuilder photoMenu_sb = new StringBuilder();
photoMenu_sb.Append("<label>Testing </label>");
return photoMenu_sb.ToString();
}
UPDATE Поскольку публичной статической строки photoMenu (интермедиат IDphoto, строка photoFileName) ожидает 2 аргументы затем
data: "{ IDphoto: " + IDphoto + "}", in the javascript function should be
data: "{ IDphoto: " + IDphoto + ", photoFileName: '" + photoFileName + "'}",
Что 'тип item.IDphoto'? – chridam
item.IDphoto is int – Gloria
В вашей функции javascript 'photoMenu (IDphoto, photoFileName)' Я не вижу, где используется 'photoFileName'? – chridam