我试图根据选择框中的所选选项设置值以渲染网格。到目前为止,我仍然可以散发出香味。我不太确定自己在做什么,如果“正确”,但没有用...(所以我想不是)
search: function () {
console.time("products.renderResult()");
var instance = this,
pr = "&VISIBLETOALL=1",
al = this.getValue("AllianceUNID"),
pa = this.getValue("PartnerUNID"),
qryStr = "&ALUNID=" + al + "&PAUNID=" + pa,
//urlVTA = session.getPath("main") + "agtGetProducts?OpenAgent" + pr + qryStr,
url = session.getPath("main") + "agtGetProducts?OpenAgent";
$('select[name=productSelect]').on('change', function () {
var value = $('select[name=productSelect]').val();
if (value == 'VISIBLE_TO_ALL') {
return url + pr + qryStr;
} else {
return url + qryStr;
}
});
$.getJSON(url).done(function (products) {
if (products.errormessage) {.....
这是我的搜索功能,应根据if value = VISIBLE_TO_ALL
返回url +变量(应将值设置为url + pr + qryStr),否则将仅显示url + qryStr
所以我的问题在这里
$('select[name=productSelect]').on('change', function () {
var value = $('select[name=productSelect]').val();
if (value == 'VISIBLE_TO_ALL') {
return url + pr + qryStr;
} else {
return url + qryStr;
}
});
我的html
<select name="productSelect">
<option value="">-
<optgroup label="Products">
<option value="ALL">All products
<option value="VISIBLE_TO_ALL">Products visible to all
</optgroup>
<optgroup label="Alliances"></optgroup>
<optgroup label="Partners"></optgroup>
</select>
这有可能吗?还是应该设置变量?
答案 0 :(得分:0)
鉴于您的回答,当您打印出这些值时,您将获得正确的回答,这意味着该功能运行正常,并且没有任何问题。代替返回值(这对您没有存储或使用返回的值无济于事),而是应根据需要从此函数本身直接使用这些值。
由于您想使用这些值来填充网格,因此可以使用jQuery从此函数本身进行操作,并且只要从选择框中进行新选择,就应该更新网格以反映适当的值