ASP.NET LinkButton / ImageButton и JQuery Проверяет?

Вы не можете оценить JavaScript в Jinja. Вы пытаетесь создать URL-адрес на стороне сервера, в то время как Jinja выполняет рендеринг, но вы ссылаетесь на переменную, которая доступна только в JavaScript, запущенном в клиентском браузере.

Создание URL-адреса клиента сторона является самым простым исправлением. (Я не знаю, как выглядит ваш маршрут, так что вот пример.)

$('#demo').load('/url/for/addshare2/' + variable1);

Однако это не очень полезно, потому что вы не можете использовать url_for, поэтому вам нужно hard-code url. Это хороший признак того, что вы хотите, чтобы конечная точка AJAX передавала параметры, а не конечную точку, которая содержит значения.

@app.route('/addshare2', methods=['POST'])
def addshare2():
    share = request.json['share']
    ...
    return jsonify(result=...)

Теперь вы можете сгенерировать URL с url_for и пройти параметры как данные формы.

$.post(
    '{{ url_for('addshare2') }}',
    {share: variable1},
    function (data) {
        // do something with data on successful response
    }
);
14
задан PeterFromCologne 4 August 2009 в 12:33
поделиться

2 ответа

Первое предложение могло бы все еще работать, потому что можно заставить обратную передачу запускать использование JavaScript после того, как проверка происходит.

JavaScript:

__doPostBack('<%= YourImageControl.UniqueID %>','');

второй пустой параметр может использоваться для передачи аргументов.

3
ответ дан 1 December 2019 в 16:49
поделиться

Не уверенный, если это поможет, но даст ему выстрел...

http://docs.jquery.com/Plugins/Validation/validate#options

$("input[type=image]").click(function() {
   $($(this).parents(form)).validate();
});

Вы, возможно, должны были бы заменить "форму" чем-то более определенным, но я пытался получить его максимально точный, не зная, как все размечается на Вашей странице. Ответ, если это помогает!

0
ответ дан 1 December 2019 в 16:49
поделиться
Другие вопросы по тегам:

Похожие вопросы: