Knockout.js 敲除图像src绑定问题
我已将存储图像名称保存在数据库中,并将图像文件保存在本地文件夹中 我过去常把图像装订起来Knockout.js 敲除图像src绑定问题,knockout.js,Knockout.js,我已将存储图像名称保存在数据库中,并将图像文件保存在本地文件夹中 我过去常把图像装订起来 <img width="16px" height="16px" data-bind="attr:{src: PhotoName}" /> 在html中,它是show <img src="http://sitename.com/Controller/action/imagename.extension"/> 但我需要 <img src="http://sitenam
<img width="16px" height="16px" data-bind="attr:{src: PhotoName}" />
在html中,它是show
<img src="http://sitename.com/Controller/action/imagename.extension"/>
但我需要
<img src="http://sitename.com/imagefolder/imagename.extension"/>
你知道我该怎么解决这个问题吗??
提前感谢。您的问题与kncokout.js无关。如果您的
PhotoName
仅包含imagename.extension
,则需要手动构建图像路径,以便正确显示图像
因此,您需要直接在绑定中创建正确的路径:
<img data-bind="attr:{ src: '/imagefolder/' + PhotoName }" />
注意:如果您的PhotoName
是一个ko.observable
,那么您需要编写src:'/imagefolder/'+PhotoName()
或者将此逻辑移到viewmodel中,例如创建链接生成的计算属性,或者在创建viewmodel时将正确的url分配给
PhotoName
等。PhotoName包含哪些内容?仅imagename.extension
?为什么您认为这是一个令人震惊的问题?你在PhotoName中存储了什么?数据库和图像中只有一个照片名和扩展名在folderI中,我是新加入knockoutjs的,我必须面对这种情况。。我刚刚找到了一个简单的解决办法<代码>解决方案只是../use before path,然后您就可以得到所需的结果。尽管这个问题是三年前提出来的,我还是想和大家分享。1我补充了一点:但它不起作用。但是现在它工作了,因为“()”那么input type=“file”呢?注释是否只适用于包含值的情况?在我的例子中,
即使可以观察到resultImage
,也可以正常工作。@ValentinHeinitz是的,注意事项仅适用于绑定中有一些复杂表达式(如字符串串联)的情况。如果只直接绑定到可观察属性,则不需要编写()