相关疑难解决方法(0)

为什么Firefox没有显示正确的默认选择选项?

我正在制作一个网络应用来管理产品SKUS.其中一部分是将SKU与产品名称相关联.在表格的每一行上,我列出一个SKU并显示一个<select>包含产品名称的框.当前与数据库中该SKU关联的产品具有类似的属性selected="selected".这可以通过AJAX进行更改和更新.

确切地说有很多产品<option>s - 103 - 这个列表<select>在每行重复.

从页面上的另一个输入,我使用jQuery AJAX请求添加新的SKU /产品关联,并清楚地表明它们是立即添加的,我将它们插入到表的顶部,带有一点突出显示效果.随着SKU数量增加到10左右,如果我刷新页面(将所有内容从按产品名称排序的数据库中加载回来),Firefox会默认显示一些错误的选项.它显示哪个不正确的选项并不一致,但它似乎混淆了页面重新加载之前存在的选项.

如果我检查<select>使用的Firebug,那么它就select="selected"在正确的<option>标签上.刷新页面(或者返回并输入此页面的URL以返回)不会使其正确显示,而是刷新(Ctrl + F5).

Chrome和IE7都首先正确显示.

我的理论是,这是Firefox的错误缓存策略的结果.听起来不错吗?有没有什么办法可以在我的代码中说"如果这个页面刷新了,那么刷新一下 - 从头开始​​重新加载一切?"

更新

为了解决这个问题,我改变了策略.

  • 以前,我在每个表行上放置一个<select>带有长列表的<option>s,并将当前值设置为默认值
  • 现在,我把当前值放在一个<span>.如果用户单击"更改"按钮,我将替换为<span>a <select>,"更改"按钮变为"确认"按钮.如果他们更改了选项并单击确认,AJAX将更新数据库,并且这次使用新值<select>返回到a <span>.

这有两个好处:

  • 它修复了上面描述的错误
  • 它需要在页面上较少的DOM元素(所有这些多余<option>S)

firefox select caching

67
推荐指数
6
解决办法
5万
查看次数

HTML selected ="selected"无法正常工作

嗨,有人可以告诉我下面的代码有什么问题吗?

选中="选中"不适合我.

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    <select id="tstselect" name="tstselect" onchange="showselected(this.value);">
    <option value="0" >0</option>
    <option value="1" >1</option>
    <option value="2" >2</option>
    <option value="3" selected="selected">3</option>
    </select>
Run Code Online (Sandbox Code Playgroud)

提前致谢

html select

45
推荐指数
1
解决办法
12万
查看次数

如何为WTForms SelectField设置默认值?

当尝试使用WTForms设置SelectField的默认值时,我将值传递给'default'参数,就像这样.

class TestForm(Form):
  test_field = SelectField("Test: ", choices=[(1, "Abc"), (2, "Def")], default=2)
Run Code Online (Sandbox Code Playgroud)

我也试过以下.

class TestForm(Form):
  test_field = SelectField("Test: ", choices=[(1, "Abc"), (2, "Def")], default=(2, "Def"))
Run Code Online (Sandbox Code Playgroud)

既不将默认的选定字段设置为"Def".这适用于其他类型的字段,如TextField.如何设置SelectField的默认值?'

python flask wtforms

41
推荐指数
5
解决办法
4万
查看次数

标签 统计

select ×2

caching ×1

firefox ×1

flask ×1

html ×1

python ×1

wtforms ×1