【发布时间】:2026-01-31 07:40:01
【问题描述】:
我有一个函数可以手动设置jqgrid 列的宽度。如果我在此之后想要使用调整大小句柄,它会从原始宽度大小中添加或减去相对值。所以它看不到我的新宽度作为基础。我尝试将width 和withOrg 放入colModel,但没有成功。
我有一个点击处理程序,我在其中将一列的大小调整为点击时的特定宽度。我设置了th trought JS 的宽度。在此之后,我希望能够使用 .ui-jqgrid-resize 元素来调整列的大小。
我的代码的简短版本,比如 th 是 200px 宽:
$('th').dblclick(function(){
$(this).width('100px');
});
在用户双击后,th 的大小变小到100px,用户使用调整大小句柄来扩大th 10px。预期的结果是th 的110px 宽,但th 跳转到210px 宽。它添加了用户想要添加到原始状态的10px,而不是我通过双击设置的状态。
【问题讨论】:
-
“我手动设置 jqgrid 列的宽度”和“在此之后要使用调整大小句柄”是什么意思?你具体做什么,在什么情况下?您如何“手动设置列的宽度”?您是否编写了回调
resizeStop的代码并需要一些额外的信息? -
问题更新有帮助吗?
-
抱歉,我还是不明白你的目标。您写道“我希望能够使用 .ui-jqgrid-resize 元素”。这不可能是你的目标。您可以随时“使用元素”,但您想实现什么?为什么你“设置th的宽度”? jqGrid 已经做到了。您希望另外在用户调整列大小后调整大小?
-
手动重置列宽后,调整大小手柄的大小更改关闭。它不会根据当前(手动设置)宽度调整相对大小,而是根据我手动设置之前的宽度调整大小。假设宽度为100px,我手动将其更改为200px,向右拖动手柄10px将使列跳回110px宽,而不是210px。
-
对不起,我不能关注你。您经常写“我手动设置它”,“我手动更改它”。我不明白你的意思。如果您是开发人员,那么用户 可以调整列宽,并且您可以编写一些额外的 JavaScript 代码,这些代码将在此之后执行。例如,您可以在
resizeStop回调中编写代码。如果列大小是 100 像素,而用户明确将其增加到 110 像素,那么为什么要将其更改为 210 像素?我觉得这里没有意义。如果您将问题附加一些您使用的代码可能会更好地理解您。
标签: jqgrid