0
我想使用先前存儲的值將變量傳遞給onClick函數。我有一個數據庫設置,可以在提供郵政編碼時搜索商店位置。例如,在用戶搜索郵政編碼後,使用ajax調用生成以下鏈接。返回值 「WAFHOH3」 是與特定存儲關聯的ID:未捕獲ReferenceError:在使用字符串時沒有定義onclick
生成的鏈接:
<input type="button" onclick="myfunction(WAFHOH1);" value="This Is My Store" data-store-code="WAFHOH3">
基於此代碼:
<div class="col-sm-3"><input type="button" onclick="myfunction(' + item.store_code + ');" value="This Is My Store" data-store-code="' + item.store_code + '"></div>
我的問題是如果返回數字以外的任何內容,則會收到「Uncaught ReferenceError:WAFHOH3未定義」控制檯錯誤。當像下面的例子那樣傳遞一個數字時,一切正常,並且沒有錯誤,應用程序繼續按預期工作。
例如(這工作):
我用盡手動更改字符串到數字只隔離任何數據庫相關的問題。我唯一的猜測是,我的代碼中有些東西可能試圖將輸入驗證爲數字。
下面是ajax調用的完整代碼。
全碼:
function myFunction() {
var searchValue = $('#foobar').val();
if (searchValue.length > 3) {
var acs_action = 'searchCction';
$.ajax({
async: false,
url: mysearchurl.url+'?action='+acs_action+'&term=' + searchValue,
type: 'POST',
data: {
name: searchValue
},
success: function (results) {
var data = $.parseJSON(results);
$('#resContainer').hide();
var html = '';
if (data.length > 0) {
html += '<br/><br/><ul>';
for (var i = 0; i < data.length; i++) {
var item = data[i];
html += '<li>';
html += '<div class="row myclass">';
html += '<div class="col-sm-9">';
html += ' <h3>' + item.label + '</h3>' ;
html += ' <span>' + item.desc + '</span>';
html += '</div>'
html += ' <div class="col-sm-3"><input type="button" onclick="dofunction(' + item.store_code + ');" value="This Is My Store" data-store-code="' + item.store_code + '"></div>';
html += '</div>';
html += '</li>';
}
html += '</ul><br/><br/><p>This is an example message please email us at <a href="mailto:[email protected]">[email protected]</a> for assistance.';
}
else {
html += '<br/><br/><p>This is an example message, email us at <a href="mailto:[email protected]">[email protected]</a> for assistance.';
}
$('#foo').html(html);
$('#foo').show();
$('.foobar').hide();
}
});
} else {
$('#foo').hide();
}
}
任何指導表示讚賞。
這個工作完美。我記得在幾個地方閱讀報價是可選的。我猜在這種情況下,情況有點不同。謝謝! – Infini7y