2013-05-09 77 views
0

鉴于以下两个按钮:跨浏览器和JavaScript少的解决方案提交按钮值问题

<button type="submit" name="MyButton" value="Foo">Do Foo</button> 
<button type="submit" name="MyButton" value="Bar">Do Bar</button> 

当点击这些按钮,除了IE7所有浏览器和下面将张贴按钮的值(“富”或“酒吧”),而IE7及以下版本则发布文字(“Do Foo”或“Do Bar”)。

(这是一个MVC项目,但问题是不特定于MVC)

This thread有很多答案,但他们没有将工作时:

  • 值和文本是不同的,
  • 禁用JavaScript

我们希望支持灵活的按钮上的文字,使企业可以在没有合作过我们的CMS改变这些改变。所以我们不能认为我们的文字和价值观是一样的。但我们也不想依靠JavaScript来解决这个问题。

但是,我想不出有什么办法可以解决这个问题,不需要JavaScript,或者保持值和文本相同。

回答

0

通常的做法是关闭名称而不是值。

<button type="submit" name="MyButton_foo" value="Foo">Do Foo</button> 
<button type="submit" name="MyButton_bar" value="Bar">Do Bar</button> 

然后搜索提交的表单值匹配模式/^MyButton_(.*)$/的网址。在an article I wrote some years ago中有多种语言的示例(尽管不是C#)。